在C++中读取制表符分隔文件并将每行存储为记录的最佳方式是什么?我一直在寻找一个开源的库来帮助解决这个问题,但一直没有成功,所以看起来我必须自己写。在C++中读取分隔文件
6
A
回答
17
typedef vector<vector<string> > Rows;
Rows rows;
ifstream input("filename.csv");
char const row_delim = '\n';
char const field_delim = '\t';
for (string row; getline(input, row, row_delim);) {
rows.push_back(Rows::value_type());
istringstream ss(row);
for (string field; getline(ss, field, field_delim);) {
rows.back().push_back(field);
}
}
这会让你开始。它没有做任何检查,每行有相同数量的字段,允许转义field_delim
等。
+0
此代码在Visual Studio中完成了机器人工作。 错误是错误“C4430:缺少类型说明符 - int假定”。 我已经包含string.h – tumchaaditya 2012-04-26 05:04:23
5
使用iostreams没有问题 - 您可以用getline将每一行读入字符串,然后使用该字符串的stringstream来遍历字段。
0
有几个库列在维基百科的文章CSV_application_support。
相关问题
- 1. Tilde(〜)分隔文件在SSIS中读取
- 2. 使用getLine在C++中读取CSV文件中的分隔列
- 3. C++:读取分隔文件并存储在结构中
- 4. 在c#中读取/写入CSV /制表符分隔文件
- 5. C++分号分隔的文件中读取
- 6. 如何从冒号(:)读取C#中的分隔文本文件
- 7. C++指定分隔从文本文件中读取单词
- 8. 阅读文本分隔文件C
- 9. 从C#中的分隔文件中读取行
- 10. 从C中的文件中读取逗号分隔的数字
- 11. 在R - TAB分隔文件中读取几个文件
- 12. 从逗号分隔的数据文件中读取列C++
- 13. 用C++中的多个分隔符读取文件
- 14. 将管道分隔文件*读取到结构数组中C
- 15. 读取制表符分隔文件到在C++数组
- 16. 如何在PIG中读取以分号分隔的CSV文件
- 17. 在python中读取分号分隔的txt文件
- 18. VBA读取分隔文本
- 19. 读取文件时使用分隔符
- 20. SAS - 读取原始/分隔文件
- 21. python loadtxt读取分隔文件
- 22. 在读取c中的制表符分隔文件时出现'分段错误'
- 23. 分割读取文件C++
- 24. 读取以分号分隔的文本文件中的不同数据C
- 25. PYTHON:在文本文件中读取不适用于分隔符
- 26. 在python中读取分隔文本文件
- 27. 从C中的文本文件读取空格分隔的浮点值C
- 28. 通过在C中输入数据集来分隔读取文本文件#
- 29. 读取存储在csv文件中的rgb值,用逗号分隔符分隔
- 30. 在C中读取文件读取#
我很惊讶,当我搜索这个时,我无法简单地从某个地方摘取一些代码来做这么简单的事情。无论如何,我为我的解决方案写了一个博客(基于Stack Exchange上的其他答案)[C++小知识](http://goo.gl/y0bOVv) – Wybird666 2014-07-24 15:45:41