3
我們可以在使用輸入文件的元素的同時在函數中同時執行這兩個操作嗎?我們可以在輸出文件中同時寫入結果嗎?從另一個文件讀取時寫入文件
裏面的而聲明是真的嗎?
void solve(string inputFileName, string outputFileName)
{
//declaring variables
string filename = inputFileName;
//Open a stream for the input file
ifstream inputFile;
inputFile.open(filename.c_str(), ios_base::in);
//open a stream for output file
outputfile = outputFileName;
ofstream outputFile;
outputFile.open(outputfile.c_str(), ios_base::out);
while(!inputFile.eof())
{
inputFile >> number; //Read an integer from the file stream
outputFile << number*100 << "\n"
// do something
}
//close the input file stream
inputFile.close();
//close output file stream
outputFile.close();
}
你有試過嗎?我認爲它應該工作。 – Xymostech
您可能想閱讀關於RAII(資源獲取是初始化)。你的close語句或者是多餘的(如果文件關閉了)或者不是異常安全的(如果文件沒有關閉,那麼close語句在異常情況下不會被執行,這可能會導致問題)。我猜你的代碼可以通過銷燬流對象來關閉文件,但是你應該明白爲什麼close語句可以被刪除。 – JohnB
請勿使用'eof()'。這從來都不正確。每天大約有200人在StackOverflow上得到這個錯誤... –