我有一项将文件保存到计算机的任务。所以这是我的问题,当我写入文件时,它写入十六进制值..我不知道我的代码有什么问题。这是:
void MainWindow::on_actionSave_triggered()
{
QString filename = QFileDialog::getSaveFileName(
this,
tr("Save Document"),
QDir::currentPath(),
tr("Documents (*.txt)") );
QFile f( filename );
f.open( QIODevice::WriteOnly | QIODevice::Text );
QTextStream out(&f);
out << ui->textEdit->document();
}
答案 0 :(得分:5)
QTextEdit的文档方法返回QTextDocument,我想你想用toPlainText方法代替。
答案 1 :(得分:1)
QTextEdit::document()
将返回QTextDocument*
,这将是十六进制值(地址)。这就是你在文件中添加的内容。
要从QTextEdit获取内容,请使用QString QTextEdit::toPlainText ()
HTH ..