我一直在试图制作一个解析文本文件并将6
条信息提供给对象数组的程序。对我而言,问题在于我遇到了如何处理文本文件的问题。我被告知,我需要做的第一步是编写一些代码,计算每个条目有多少个字母。该TXT文件的格式如下:使用strtok()解析文本文件
"thing1","thing2","thing3","thing4","thing5","thing6"
这是我的代码的当前版本:
#include<iostream>
#include<string>
#include<fstream>
#include<cstring>
using namespace std;
int main()
{
ifstream myFile("Book List.txt");
while(myFile.good())
{
string line;
getline(myFile, line);
char *sArr = new char[line.length() + 1];
strcpy(sArr, line.c_str());
char *sPtr;
sPtr = strtok(sArr, " ");
while(sPtr != NULL)
{
cout << strlen(sPtr) << " ";
sPtr = strtok(NULL, " ");
}
cout << endl;
}
myFile.close();
return 0;
}
因此,有两件事情让我很难现在。
1)如何处理分隔符?
2)我如何处理“跳过”每行中的第一个引号?
将如何我完成了我使用std :: string必须做的事情?你能走过我吗? – Sam 2013-04-30 02:17:12
@Sam增加了更多细节 – 2013-04-30 02:39:32