我无法在c ++字符串中添加新行

Wil*_*ill 4 c++ newline escaping

如何在c ++字符串中添加新行?我正在尝试读取文件但是当我尝试追加'\n'时它不起作用.

std::string m_strFileData;
while( DataBegin != DataEnd ) {
    m_strFileData += *DataBegin;
    m_strFileData += '\n';
    DataBegin++;
}
Run Code Online (Sandbox Code Playgroud)

Ste*_*end 8

如果您要处理许多行,使用stringstream可能会更有效.

ostringstream lines;

lines << "Line 1" << endl;
lines << "Line 2" << endl;

cout << lines.str();   // .str() is a string
Run Code Online (Sandbox Code Playgroud)

输出:

Line 1
Line 2
Run Code Online (Sandbox Code Playgroud)


Ale*_*rty 1

这将在每个字符或字符串后附加一个换行符,具体取决于 DataBegin 的实际类型。您的问题不在于您给出的代码示例。如果您给出预期结果和实际结果以及所使用变量的数据类型,将会更有用。