QFile
QFile 是一个读写文本、二进制文件和资源的 I/O 设备。 QFile 可以自己使用,也可以更方便地与 QTextStream 或 QDataStream 一起使用。
不管操作系统是什么, QFile的文件分隔符都是‘/‘。 更高级的文件系统相关操作由QFileInfo
和QDir
提供,QFile基本用到如下操作:
setFileName
:设置文件路径exists
:文件是否存在remove
:删除文件open
与close
:打开关闭文件flush
:刷新文件
使用示例:
void MainWindow::on_open_clicked()
{
//打开文件选择框获取文件路径
QString fileName = QFileDialog::getOpenFileName(this);
file.setFileName(fileName);
//判断文件是否存在
if (!file.exists())
return;
//打开文件
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
//读取文件内容
ui->myText->setPlainText((file.readAll()));
//设置按钮状态
ui->open->setEnabled(false);
ui->close->setEnabled(true);
//关闭文件
file.close();
}
备注
上面提到的一些文件读写和操作函数都是QT自己封装的。除此之外,我个人觉得更推荐使用操作系统API和标准库中的函数。
- 操作系统API调用
- C标准库
- C++标准库
这样更加通用,并且不用记忆QT的某些特殊类用法。