在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