91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Qt中如何使用QFile類打開文件

發布時間:2021-06-11 15:23:53 來源:億速云 閱讀:1902 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關Qt中如何使用QFile類打開文件的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Qt文件操作類QFile簡介

Qt中使用QFile類來操作文件的輸入/輸出。繼承至QIODevice,QIODevice類是輸入/輸出設備的基類,

為設備提供了公共實現和抽象接口用于讀寫塊數據。QIODevice又繼承至QObject。

1、使用QFile類打開文件

QFile的構造函數

QFile(const QString &name) //傳入一個文件路徑

構造完成后,并沒有打開文件,需要使用QFile::open函數來打開文件

[virtual] bool QFile::open(OpenMode mode);
/*
*OpenMode mode 打開方式,是一個枚舉類型
*QIODevice::NotOpen 不打開
*QIODevice::ReadOnly 只讀方式
*QIODevice::WriteOnly 讀寫方式
*QIODevice::ReadWrite 讀寫方式
*QIODevice::Append   追加方式
*QIODevice::Truncate 階段方式
*QIODevice::Text     轉換不同平臺的換行,讀的時候把所有換行轉成'\n',寫的時候再把'\n'轉換對應平臺的換行
*QIODevice::Unbuffered 不使用緩沖區
*/

例如:

QFile file("d:/123.txt");
file.open(QIODevice::ReadOnly);

2、QFile類關閉文件

[virtual] void QFileDevice::close(); //刷新緩沖區,并關閉文件

3、QFile類文件讀操作

QIODevice::read函數

QByteArray QIODevice::read(qint64 maxSize);//讀取maxSize個字節,內部位置指針后移maxSize,并返回一個QByteArray對象。

例如:

QFile file("d:/123.txt");
file.open(QIODevice::ReadOnly);
qDebug() << file.read(10) << endl;
file.close();

QIODevice::readLine函數

QByteArray QIODevice::readLine(qint64 maxSize = 0) //讀取一行,但是這一行不能超過maxSize字節,maxSize = 0代表不限制行字節數。

例如:

QFile file("d:/123.txt");
file.open(QIODevice::ReadOnly);
qDebug() << file.readLine(10) << endl; 
file.close();

QIODevice::readAll函數

QByteArray QIODevice::readAll()

4、QFile類文件寫操作

QIODevice::write函數

qint64 QIODevice::write(const QByteArray &byteArray); //將byteArray寫入文件,寫完內部位置指針后移

例如:

QFile file("d:/123.txt");
file.open(QIODevice::ReadWrite | QIODevice::Text); //打開模式可以使用‘|'組合
QByteArray byte("hellworld");
file.write(byte);
file.write(byte);
file.close();

5、QDataStream

流控文件輸入輸出可以使用QDataStream。

流控寫入

#include <QDataStream>
#include <QDebug>
#include <QFile>
int main(int argc, char**argv)
{
    QFile file("d:/123.txt");
    file.open(QIODevice::ReadWrite);
    QDataStream stream(&file);
    int a = 10;
    QString str = "helloworld";
    stream << a << str;
    file.close();
    return 0;
}

流控讀取

#include <QDataStream>
#include <QDebug>
#include <QFile>
int main(int argc, char**argv)
{
    QFile file("d:/123.txt");
    file.open(QIODevice::ReadWrite);

    QDataStream stream(&file);
    int a;
    QString str;
    stream >> a >> str;
    qDebug() << "a:" << a << "str:" << str << endl;
    file.close();
    return 0;
}

感謝各位的閱讀!關于“Qt中如何使用QFile類打開文件”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武乡县| 永和县| 浮山县| 普安县| 湘乡市| 遵义市| 山东省| 神木县| 新建县| 饶平县| 武川县| 临沭县| 中牟县| 云梦县| 商城县| 延边| 朝阳区| 满洲里市| 安化县| 南靖县| 南城县| 开鲁县| 高邑县| 阜新| 南充市| 隆安县| 冷水江市| 贵溪市| 崇阳县| 乌兰县| 江北区| 凌海市| 娄烦县| 什邡市| 托克逊县| 全州县| 正蓝旗| 阳新县| 库尔勒市| 东宁县| 五指山市|