qt读取指定文件分为两步,第一步获取文件路径,第二部读取文件。
文本对话框来获取路径
QString filename;
filename = QFileDialog::getOpenFileName(nullptr,"选择文件","",nullptr);
别忘记添加头文件QFileDialog
getopenfilename的几个参数解释:
parent,caption,dir,filter,selectedFilter,options六个参数。
parent指定父部件,缺省nullptr,一般可设置成this。
caption为对话框标题。
dir为初始目录,空为当前程序运行路径。
filter过滤原则,nullptr为不过滤(所有类型文件)可设置*.txt等。
selectedFilter指向filter。多个过滤条件用;隔开。
options保存着关于如何运行对话框的选项。
读取文件
通过以上两行代码我们已经得到了所选文件路径,并赋值给了filename
接下来就是读取文件。
QFile file(filename);
QByteArray bytes;
if(!file.exists()) //文件不存在则退出
{
qDebug()<<"file not exist";
LabelSocketState->setText("状态:文件不存在");
return false;
}
if(file.open(QFile::ReadOnly))
{
bytes = file.readAll();
LabelSocketState->setText("状态:读取文件成功");
}
file.close();
记得添加头文件Qfile