0

我想在文本文件中添加换行符,但没有任何反应。

这是我的代码:

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'

我希望有一个人可以帮助我,

在此先感谢蒂姆·斯密茨

4

1 回答 1

1

您的底层QIODevice(文件)并没有真正在文本模式下工作。打开与流一起使用QIODevice::Text的文件时使用

QFile file( filename , QIODevice::Text );
...
QTextStream stream( &file);

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

"\r\n"当您尝试在 POSIX 系统上生成 Windows 文本文件时,您确实必须使用这种情况的一个示例。

于 2013-06-12T18:43:25.313 回答