QT(37)-文件操作-QFile-QFileInfo-实例源码

1.打开一个文件,编码UTF-8,读取内容并显示在对话框中。用到QFileDialog、QFile、QTextCodec
2.文件本身的信息,如大小,创建日期。QFileInfo
#include "qtfile.h"
#include "ui_qtfile.h"
#include<QFileDialog>
#include<QFile>
#include<QTextCodec>
#include<QFileInfo>
#include<QDebug>
#include<QTime>
qtFile::qtFile(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::qtFile)
{
ui->setupUi(this);
connect(ui->openfile_bt,&QPushButton::clicked,[=](){
//打开文件用QFileDialog
QString path=QFileDialog::getOpenFileName(this,"openfile","/home/C++/QTProject/QtFile/MYTESTFILE.TXT");
//将路径放入到lineEdit
ui->lineEdit->setText(path);
// 编码格式 默认是utf-8
//QTextCodec *codec=QTextCodec::codecForName("gbk");
//1.读取内容 放入到textEdit
QFile file(path);
//设置打开方式
file.open(QIODevice::ReadOnly);
//1.1读取所有
QByteArray arrayall=file.readAll();
//1.2.一行行读
QByteArray arrayoneline;
while(!file.atEnd())
{
arrayoneline+=file.readLine();
}
//读取内容 放入到textEdit
ui->textEdit->setText(arrayall);
file.close();
//2 写 追加的方式进行写
file.open(QIODevice::Append);
file.write("aaaaa");
file.close();
//3.文件信息类
QFileInfo info(path);
qDebug()<<"大小"<<info.size()<<"后缀名:"<<info.suffix()<<"文件名:"<<info.fileName();
qDebug()<<"创建日期"<<info.created().toString("yyyy/MM/dd hh:mm:ss");
});
}
qtFile::~qtFile()
{
delete ui;
}

浙公网安备 33010602011771号