MQL5 的 CSV 文件阅读器 - MetaTrader 5 库
1. 在 MqlParam 数组中设置列描述数组。
CCsvReader infile; 消息参数example_column_desc[] = { {TYPE_STRING, 0,0.0,“象征”}, // 1. 字段是字符串 {类型_双, 0,0.0,“合同规模”},// 2. 字段为双精度 {类型_日期时间,0,0.0,“过期”} // 3. 字段为日期时间 }; infile.FieldDesc(example_column_desc);
2.使用Open()函数打开文件
内文件。打开(Inp文件名,文件读取);
2a.当文件有标题并且您对标题行的内容不感兴趣时,使用 Readline(void) 跳过它。
infile.ReadLine();
3. 使用 ReadLine(MqlParam arr),MqlParam 数组将填充 CSV 文件的一个文本行的值。
消息参数数据线[]; 整数字段阅读; fieldsread = infile.ReadLine(数据行);
该类的缺点
- 这段代码不是很快
- 目前仅处理 Unicode 文件。单字节文件不是开发优先事项。
- 此代码可能会读取一行并注意到在该行末尾达到了 EOF。如果 可能不要使用 IsEnding() 进行测试,而是使用 ReadLine 函数的返回值。返回值只会返回FILE_STATE_EOF 下一次阅读后。因此所有记录都将被处理。
使用样本
我提供了一个包含 3 张纸的 LibreCalc 电子表格。这是一个计算金字塔系统的一些阶数的示例。第一个工作表通过“另存为...”导出为 CSV 文件。使用以制表符作为分隔符的 CSV 文件格式并使用 Unicode。将 CSV 文件放入您的
附件下载
📎 sample.mq5 (3.59 KB)
📎 csvreader.mqh (19.16 KB)
📎 enum_file_state.mqh (0.9 KB)
Source: MQL5 #24777
💡 精彩内容推荐
✍️ 楼主最新发布
- •
- •
- •
- •
- •
- •
🔗 您可能感兴趣
- •
- •
- •
- •
- •
- •
🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录
