【发布时间】:2013-04-27 16:26:57
【问题描述】:
我只需要一点文件解析方面的帮助。我们必须解析一个每行有 6 个字符串条目的文件,格式为:
“字符串 1”、“字符串 2”、“字符串 3”、“字符串 4”、“字符串 5”、“字符串 6”
我的导师最近给了我们一小段代码作为“提示”,我应该使用它。不幸的是,我不知道如何让它工作。这是我的文件解析函数。
void parseData(ifstream &myFile, Book bookPtr[])
{
string bookInfo;
int start, end;
string bookData[6];
getline(myFile, bookInfo);
start = -2;
myFile.open("Book List.txt");
for (int j = 0; j < 6; j++)
{
start += 3;
end = bookInfo.find('"', start);
bookData[j] = bookInfo.substr(start, end-start);
start = end;
}
}
所以我试图将 6 个字符串读入一个字符串数组。有人可以帮我完成整个过程吗?
【问题讨论】:
-
你的导师给了你这段代码。我建议你改变课程,因为这是一种非常糟糕的方式。
-
我同意詹姆斯的观点。我已经包含了可以说是解析带引号的字符串多行文件的“更好”方法。它并不完美,但它比你的教练给你的“提示”要好得多(这是一个“提示”可以肯定,但与他们的熟练程度有关,而不是解决这个具体问题)。