如何在写入文本文件时向一行添加换行符

How to add a break to a line while writing to a text file

本文关键字:一行 换行符 添加 文件 文本      更新时间:2023-10-16

我想在文本文件中添加一个换行符,但是什么也没发生

下面是我的代码:
void controleformules::on_pushButton_4_clicked(
{
 QString str= ui->textEdit_2->toPlainText();
 QString filename= str+".txt";
 QFile file( filename );
 if ( file.open(QIODevice::ReadWrite) )
 {
    QTextStream stream( &file );
      stream
              << "U heeft nu deze 2 formules gekozen: Formule 1: " << x1Int << " + " << y1Int << " = " << r1Int << ". Formule 2: "<< x2Int << " + " << y2Int << " = " << r2Int << "." << 'n'
              <<"eerst moet je in beide formules de x of de y elimeneren, wij doen de y eerst";
   }
}

我尝试了"n"'n'

我希望有人能帮助我,

提前感谢Tim Smits

您的底层QIODevice(文件)并没有真正在文本模式下工作。打开与流

一起使用的文件时使用QIODevice::Text
QFile file( filename , QIODevice::Text );
...
QTextStream stream( &file);

对于文本流,"n"'n'都应该工作。您可以选择std::endl(或者更准确地说,它在Qt中的对应版本),但这并不是必需的。"n"'n'将产生正确的结果,无论操作系统如何,假设您的输出流确实是文本流,并且假设您的生成文件在您用来检查它的同一平台上。(断言"rn" 必须在Windows上使用的注释是不正确的。)

当你试图在POSIX系统上生成Windows文本文件时,你确实需要使用"rn"的一个例子。