用户输入字符串的文件附加问题... C++
File appending problem with users input with strings... C++
我正在使用用户输入将字符串存储在 txt 文件中!但是我有一个问题。虽然输入用于文件写入的用户字符串很好,但我想添加新行,但是当用户为文件输入一个短语时,它将输入写入文件,但不是在一个完整的行中,每个单词需要一个行...
代码:
int Char;
std::string Input;
std::ofstream ofDocument;
std::ifstream ifDocument;
ifDocument.open("Path\Document.txt");
ofDocument.open("Path\Document.txt", std::fstream::app); //I tried ios::app but same result...
if (ifDocument)
{
while (1)
{
std::cin >> Input;
ofDocument << Input << std::endl;
switch (Char = _getch())
{
case '@':
std::cout << "You pressed '@', exiting application..." << "\n" << std::endl;
exit(0);
}
}
}
else
{
std::cout << "Cannot create 'Document.txt'. Please retry..." << std::endl;
ThisFunction();
}
示例:用户输入:第一行:你好,我正在写一个文本文件
第 2 行:这行得通吗?
文件中的输出:
你好:新线
我:新行
上午:新线
写作:换行
在:新行
一个:新行
文本:新行
文件:新行
将:新行
这个:新行
工作?
感谢任何帮助!
你应该尝试把getline(std::cin, Input)放在std::cin >> Input下面来捕获所有空格,这样就不会每个单词都是一行。希望这有效
我正在使用用户输入将字符串存储在 txt 文件中!但是我有一个问题。虽然输入用于文件写入的用户字符串很好,但我想添加新行,但是当用户为文件输入一个短语时,它将输入写入文件,但不是在一个完整的行中,每个单词需要一个行...
代码:
int Char;
std::string Input;
std::ofstream ofDocument;
std::ifstream ifDocument;
ifDocument.open("Path\Document.txt");
ofDocument.open("Path\Document.txt", std::fstream::app); //I tried ios::app but same result...
if (ifDocument)
{
while (1)
{
std::cin >> Input;
ofDocument << Input << std::endl;
switch (Char = _getch())
{
case '@':
std::cout << "You pressed '@', exiting application..." << "\n" << std::endl;
exit(0);
}
}
}
else
{
std::cout << "Cannot create 'Document.txt'. Please retry..." << std::endl;
ThisFunction();
}
示例:用户输入:第一行:你好,我正在写一个文本文件
第 2 行:这行得通吗?
文件中的输出: 你好:新线 我:新行 上午:新线 写作:换行 在:新行 一个:新行 文本:新行 文件:新行 将:新行 这个:新行 工作?
感谢任何帮助!
你应该尝试把getline(std::cin, Input)放在std::cin >> Input下面来捕获所有空格,这样就不会每个单词都是一行。希望这有效