【发布时间】:2015-02-09 10:12:16
【问题描述】:
我正在编写一个基本的文本编辑器,我想在其中编辑 HTML 文件。目前我有一个 QTextEdit,我可以在其中编写文本,然后保存到文件/从文件中打开。
问题是当我打开一个 HTML 文件时,它不会以纯文本形式打开。相反,它以处理后的 HTML 格式打开。即使我保存为 .txt,也会发生这种情况。所以我可以写
<html>
<h1>Test</h1>
</html>
在 textEdit 中,将其保存为文本文件。但如果我打开它,突然它是处理过的 HTML。当我打开从 Notepad++ 保存的 Html 文件时,也会发生同样的情况。
如何像记事本一样以纯文本格式打开文件?
这是我目前拥有的代码:
void Notepad::on_actionOpen_triggered()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Open file"), QString(),
tr("Text Files (*.txt);;C++ Files (*.cpp *h);;All types (*.*)"));
if (!fileName.isEmpty()) {
QFile file(fileName);
if (!file.open(QIODevice::ReadOnly)) {
QMessageBox::critical(this, tr("Error"), tr("Could not open file"));
return;
}
QTextStream in(&file);
ui->textEdit->setText(in.readAll());
file.close();
}
}
【问题讨论】: