我一直在試圖製作一個解析文本文件並將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