我有一個程序,它使用text_file來存儲大量的數字。 當我必須加載這些數字時,我必須一次加載2500個數字。 我有一個while循環來一次又一次地加載它...多次讀取txt
現在,問題發生在while循環我猜。
ifstream mfile("abc.txt", ifstream::out);
if(mfile.is_open())
{
getline(mfile, b);
char* ch = new char[b.length() + 1];
strcpy(ch, b.c_str());
result = atof(strtok (ch,";"));
while(i<125)
{
cout<< strtok (NULL,";")<<" ";
i++;
}
i=0;
}
else
{
cout<<"probleem";
}
mfile.close();
這是一個簡短而簡單的例子,它是更復雜的代碼,它是問題所在。
請注意,這段代碼必須在while循環中。
但它只運行一次代碼,可能是因爲mfile
不能使用多次。 當我想多次讀取文件時,必須從上一次讀取結束開始讀取。
存儲你離開的地方,並從那裏繼續? – DiegoNolan
是的,但我仍然必須使用while循環,因爲我必須繼續 – abcdef
我不明白這個問題。你爲什麼不打開和關閉文件_outside_ while循環?在循環中,第一個'getline()'將讀取第一行,第二行讀取第二行,依此類推。 (在另一個註釋中,'strtok(NULL,';')'應該完成什麼?) – jogojapan