可能许多人遇到了在DELPHI中使用CSV文件作为数据集的问题。让我们看一下解决此问题的一种方法。我们将通过TADOQuery连接CSV文件,并在FastReport VCL 6中根据此数据生成 告。
创建一个项目并添加以下组件。
OHLC_Query : TADOQuery ;OHLC_Source : TDataSource ;OHLC_DB : TfrxDBDataset ;frxReport1 : TfrxReport ;frxDesigner1 : TfrxDesigner ; frxChartObject1 : TfrxChartObject ;ButtonShowReport : TButton ;ButtonDesignReport : TButton ;

要连接到CSV文件,我们将使用OHLC_Query:TADOQuery组件。
通过设置ConnectionString属性进行设置:
OHLC_Query.ConnectionString :=’Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.;Extended Properties="text;";Persist Security Info=False’
接下来,还需要根据Microsoft 站上的文档编写Schema.ini文件(https://docs.microsoft.com/zh-cn/sql/odbc/microsoft/schema-ini-file-text-file-driveriew=sql-server-ver15),并将其添加到项目文件夹。
让我们分析示例CSV文件(EURUSD_200201_200410.csv)的示例,它具有以下结构:

数据使用“;”分隔。数据以更直观的形式显示,共有9列:

根据Microsoft 站上的文档(https://docs.microsoft.com/zh-cn/sql/odbc/microsoft/schema-ini-file-text-file-driveriew=sql-server-ver15),此文件应具有以下结构:
[EURUSD_200201_200410.csv]ColNameHeader=TrueFormat=Delimited(;)DecimalSymbol=.TextDelimiter='CharacterSet=ANSIDateTimeFormat=yyyymmddCol1=TICKER charCol2=PER integerCol3=DATE dateCol4=TIME charCol5=OPEN floatCol6=HIGH floatCol7=LOW floatCol8=CLOSE floatCol9=VOL integer
为OHLC_Source和OHLC_DB设置必要的设置:
OHLC_Source.DataSet := OHLC_Query;OHLC_DB.DataSource := OHLC_Source;OHLC_DB.UserName := 'OHLC';
创建一个模板并将其另存为DemoCSV.fr3

并将数据集连接到模板


接下来,添加ButtonDesignReportClick,ButtonShowReportClick和FormCreate事件:
procedure TFormDemoCSV.ButtonDesignReportClick(Sender: TObject);begin frxReport1.DesignReport;end;procedure TFormDemoCSV.ButtonShowReportClick(Sender: TObject);begin frxReport1.ShowReport();end;procedure TFormDemoCSV.FormCreate(Sender: TObject);begin frxReport1.LoadFromFile('./DemoCSV.fr3')end;
启动应用程序

当单击ButtonShowReport按钮时,将生成一个 告。

恭喜,您已将CSV文件作为数据集包含在Delphi中,并根据此数据在FastReport VCL 6中构建了一个 告!
Fastreport在线购买价更低!赶紧加入购物清单吧!
还想要更多吗可以点击阅读【FastReport 表2019最新资源盘点】,查找需要的教程资源。如果您有任何疑问或需求,请随时加入FastReport技术交流群(),我们很高兴为您提供查询和咨询。
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!