[QT]QDir和QFile的基本操作

时间:2021-05-23 10:47:27

QDir和QFile的用法实例:

#include <QDebug>
#include <QDir>
#include <QFileInfo>
#include <QString>
#include <QFile>
#include <QMessageBox>

void MainWindow::DirTest()
{
///////////////////1
// QDir mDir("D:/QT_Pro");
// qDebug()<< mDir.exists();

///////////////////2
// QDir mDir;
// foreach(QFileInfo mItem, mDir.drives())
// {
// qDebug()<<mItem.absoluteFilePath();
// }

//////////////////3
// QDir mDir;
// QString mPath = "D:/QT_Pro/ZZZ";
// if(!mDir.exists(mPath))
// {
// mDir.mkpath(mPath);
// qDebug()<<"Created";
// }
// else
// {
// qDebug()<<"Already exists";
// }

//////////////////4
QDir mDir("D:/QT_Pro");
foreach(QFileInfo mitm, mDir.entryInfoList())
{
if(mitm.isDir())
qDebug()<<"Dir :"<<mitm.absoluteFilePath();
if(mitm.isFile())
qDebug()<<"File:"<<mitm.absoluteFilePath();
}
}



void Write(QString Filename)
{
QFile mFile(Filename);
if(!mFile.open(QFile::WriteOnly | QFile::Text))
{
qDebug()<<"Write: open file error";
return;
}

QTextStream out(&mFile);
out << "hello world";

mFile.flush();
mFile.close();
}

void Read(QString Filename)
{
QFile mFile(Filename);
if(!mFile.open(QFile::ReadOnly | QFile::Text))
{
qDebug()<<"Write: open file error";
return;
}

QTextStream in(&mFile);
QString mText = in.readAll();
qDebug()<<mText;

mFile.flush();
mFile.close();
}

void MainWindow::FileTest()
{
QString mFilename = "D:/QT_Pro/text.txt";
// Write(mFilename);
Read(mFilename);
}