C++从格式化的.txt文件中读取

C++ read from formatted .txt file

本文关键字:文件 读取 txt 格式化 C++      更新时间:2023-10-16

我需要从逗号分隔的.txt文件中读取,其中每一行看起来都是这样的:

12340987,Bob,23.45

(即int、int、string、double)

使用以下设置代码:

fstream myFile;
myFile.open("textfile.txt" , ios::in);
if (myFile.is_open()) {
    //read in characters as appropriate type until ','
}

我试过使用

myFile >> int1 ......

但我不确定该如何处理逗号;当读取整数时,它们可能会被过滤掉,但当我得到字符串时,这会起作用吗?

我的一个同学建议stringstream,但我发现cplusplus.com上的文档让我不知所措。

您可能想要尝试std::getline函数:

istream& getline ( istream& is, string& str, char delim );
istream& getline ( istream& is, string& str );

(发件人http://www.cplusplus.com/reference/string/getline/)