Qt5:Qt文件操作类 QFile
2013-06-29 13:59
225 查看
在QT中,操作文件一般不使用C++提供的文件操作类 , 因为操作文件的时候,要用到C++提供的 string 类,而在QT中使用的是Qt自己实现的一个string类
QString 。在Qt中使用C++的string类的时候,很多时候都要在 QString 和 string 之间进行转换,这样是很不方便的,所以在Qt程序中,一般推荐操作文件的
方法是使用Qt自己实现的文件操作类 QFile 。
现在暂且先看看QFile读写文件时用到的基本函数,其他的关于创建link和设置权限等函数先撇一边
QFile的基本构造函数:
QFile(const QString & name)
QFile(QObject * parent)
QFile(const QString & name, QObject * parent)
QFile的读写:
读写的时候,该类可以使用从祖先继承的函数 read() write() readAll()等等函数
但是通常情况下, 使用下面这两个类进行读写操作
QTextStream //用于文本文件的读写操作,操作中文的时候就使用这个
QDataStream //用于二进制文件的IO操作
关于这两个文件的用法,可以查看帮助文档
下面这些函数的功能都显而易见
bool copy(const QString & newName)
bool exists() const
bool remove()
bool rename(const QString & newName)
对于下面这两个函数
bool open(FILE * fh, OpenMode mode, FileHandleFlags handleFlags = DontCloseHandle)
bool open(int fd, OpenMode mode, FileHandleFlags handleFlags = DontCloseHandle)
俩函数都是用于重新以新的标志重新打开一个已存在的文件
//这个函数的功能是用于重新设置要打开的文件
void setFileName(const QString & name)
在使用这个文件的时候,要确保没有打开的文件已经被关闭,否则,会造成泄露
还有如下等函数,功能不意义解释,同样通过命名可以看出功能
virtual bool open(OpenMode mode)
virtual Permissions permissions() const
virtual bool resize(qint64 sz)
virtual bool setPermissions(Permissions permissions)
virtual qint64 size() const
static functions
bool copy(const QString & fileName, const QString & newName)
QString decodeName(const QByteArray & localFileName)
QString decodeName(const char * localFileName)
QByteArray encodeName(const QString & fileName)
bool exists(const QString & fileName)
bool link(const QString & fileName, const QString & linkName)
Permissions permissions(const QString & fileName)
bool remove(const QString & fileName)
bool rename(const QString & oldName, const QString & newName)
bool resize(const QString & fileName, qint64 sz)
bool setPermissions(const QString & fileName, Permissions permissions)
QString symLinkTarget(const QString & fileName)
QString 。在Qt中使用C++的string类的时候,很多时候都要在 QString 和 string 之间进行转换,这样是很不方便的,所以在Qt程序中,一般推荐操作文件的
方法是使用Qt自己实现的文件操作类 QFile 。
现在暂且先看看QFile读写文件时用到的基本函数,其他的关于创建link和设置权限等函数先撇一边
QFile的基本构造函数:
QFile(const QString & name)
QFile(QObject * parent)
QFile(const QString & name, QObject * parent)
QFile的读写:
读写的时候,该类可以使用从祖先继承的函数 read() write() readAll()等等函数
但是通常情况下, 使用下面这两个类进行读写操作
QTextStream //用于文本文件的读写操作,操作中文的时候就使用这个
QDataStream //用于二进制文件的IO操作
关于这两个文件的用法,可以查看帮助文档
下面这些函数的功能都显而易见
bool copy(const QString & newName)
bool exists() const
bool remove()
bool rename(const QString & newName)
对于下面这两个函数
bool open(FILE * fh, OpenMode mode, FileHandleFlags handleFlags = DontCloseHandle)
bool open(int fd, OpenMode mode, FileHandleFlags handleFlags = DontCloseHandle)
俩函数都是用于重新以新的标志重新打开一个已存在的文件
//这个函数的功能是用于重新设置要打开的文件
void setFileName(const QString & name)
在使用这个文件的时候,要确保没有打开的文件已经被关闭,否则,会造成泄露
还有如下等函数,功能不意义解释,同样通过命名可以看出功能
virtual bool open(OpenMode mode)
virtual Permissions permissions() const
virtual bool resize(qint64 sz)
virtual bool setPermissions(Permissions permissions)
virtual qint64 size() const
static functions
bool copy(const QString & fileName, const QString & newName)
QString decodeName(const QByteArray & localFileName)
QString decodeName(const char * localFileName)
QByteArray encodeName(const QString & fileName)
bool exists(const QString & fileName)
bool link(const QString & fileName, const QString & linkName)
Permissions permissions(const QString & fileName)
bool remove(const QString & fileName)
bool rename(const QString & oldName, const QString & newName)
bool resize(const QString & fileName, qint64 sz)
bool setPermissions(const QString & fileName, Permissions permissions)
QString symLinkTarget(const QString & fileName)
相关文章推荐
- 【转】Qt之文件操作 QFile
- Qt之文件操作QFile于QFileInfo
- Qt+QFile+QFileDialog处理多文件行数统计及有效行判定Demo
- QFileSystemWatcher Qt 实现文件监测
- [Qt]用QFileSystemWatcher来监视文件和目录的改变
- 4.关于QT中的QFile文件操作,QBuffer,Label上添加QPixmap,QByteArray和QString之间的区别,QTextStream和QDataStream的区别,QT内存映射(
- Qt之文件操作 QFile
- 4.关于QT中的QFile文件操作,QBuffer,Label上添加QPixmap,QByteArray和QString之间的区别,QTextStream和QDataStream的区别,QT内存映射(
- 4.关于QT中的QFile文件操作,QBuffer,Label上添加QPixmap,QByteArray和QString之间的区别,QTextStream和QDataStream的区别,QT内存映射(
- Qt拷贝文件、文件夹(QFile::copy)
- 笔记:Qt中的QFile(读写文件)
- 【转】Qt之文件操作 QFile
- Qt之文件操作 QFile
- 4.关于QT中的QFile文件操作,QBuffer,Label上加入QPixmap,QByteArray和QString之间的差别,QTextStream和QDataStream的差别,QT内存映射(
- Qt监测系统文件变化QFileSystemWatcher
- Qt文件读取之QFile
- Qt拷贝文件、文件夹(QFile::copy)
- Qt拷贝文件、文件夹(QFile::copy)
- Qt开发小工具之gif转换器(使用QMovie截取每一帧为QImage,然后用QFile另存为图片文件)
- QT QFile删除文件失败