使用循环将多行写入.txt

Writing multiple lines to a .txt using a loop

本文关键字:txt 循环      更新时间:2023-10-16

赋值要求我使用嵌套循环来写入文本文件。我确信这与我在嵌套循环中打开和关闭 ofstream 对象的方式有关,但我对在哪里/为什么感到困惑。

Martha 1 1 1 1
Leela 2 2 2 2
Jorge 3 3 3 3

但相反,我得到了

Martha 1 1 1 1Leela 2 2 2 2Jorge 3 3 3 3

我的代码是:

outFile.open("C:\data\agentSales.txt");
for (numRealtor; numRealtor > 0; numRealtor--) {
std::cout << "nEnter realtor's name: ";
std::getline(std::cin, realtorName);
outFile << realtorName;
for (int i = 0; i < 4; i++)
{
std::cout << "nValue for house " << i + 1 << "> ";
std::cin >> salesInput;
if (salesInput < 0 || salesInput > 200)
{
std::cout << "Error: Input must be between 0 and 200! :";
std::cin >> salesInput;
}
outFile << " " << salesInput;
}
}
outFile.close();

您不会在任何地方添加新行。您需要在第二个循环后outFile << 'n'

outFile.open("C:\data\agentSales.txt");
for (numRealtor; numRealtor > 0; numRealtor--) {
std::cout << "nEnter realtor's name: ";
std::getline(std::cin, realtorName);
outFile << realtorName;
for (int i = 0; i < 4; i++)
{
std::cout << "nValue for house " << i + 1 << "> ";
std::cin >> salesInput;
if (salesInput < 0 || salesInput > 200)
{
std::cout << "Error: Input must be between 0 and 200! :";
std::cin >> salesInput;
}
outFile << " " << salesInput;
}
outFile << 'n';
}
outFile.close();