亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Qt基礎(chǔ)開發(fā)之Qt文件操作類QFile讀寫文件的詳細(xì)方法與實例及QDataStream的使用方法

 更新時間:2020年03月16日 08:51:44   作者:嚇人的猿  
這篇文章主要介紹了Qt基礎(chǔ)開發(fā)之Qt文件操作類QFile讀寫文件的詳細(xì)方法與實例,需要的朋友可以參考下

Qt文件操作類QFile簡介

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

為設(shè)備提供了公共實現(xiàn)和抽象接口用于讀寫塊數(shù)據(jù)。QIODevice又繼承至QObject。

1、使用QFile類打開文件

QFile的構(gòu)造函數(shù)

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

構(gòu)造完成后,并沒有打開文件,需要使用QFile::open函數(shù)來打開文件

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

例如:

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

2、QFile類關(guān)閉文件

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

3、QFile類文件讀操作

QIODevice::read函數(shù)

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

例如:

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

QIODevice::readLine函數(shù)

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

例如:

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

QIODevice::readAll函數(shù)

QByteArray QIODevice::readAll()

4、QFile類文件寫操作

QIODevice::write函數(shù)

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

例如:

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讀寫文件的詳細(xì)方法與實例及QDataStream的使用方法,更多關(guān)于Qt基礎(chǔ)開發(fā)知識請查看下面的相關(guān)鏈接

相關(guān)文章

  • Qt?QPainter的使用方法

    Qt?QPainter的使用方法

    QPainter是Qt的一個繪圖類,它的主要任務(wù)是在繪圖設(shè)備上進行2D圖形渲染,本文主要介紹了Qt?QPainter的使用方法,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • c++ 臨時對象的來源

    c++ 臨時對象的來源

    大家可能對這個臨時對象這個概念還不是很清楚,那么首先我們花一些時間來理解臨時對象
    2013-01-01
  • 基于C/C++時間函數(shù)的使用詳解

    基于C/C++時間函數(shù)的使用詳解

    本篇文章是對C/C++時間函數(shù)的使用進行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • 老生常談c++中的靜態(tài)成員

    老生常談c++中的靜態(tài)成員

    有時候需要類的一些成員與類本身相關(guān)聯(lián),而不是與類的每個對象相關(guān)聯(lián)。比如類的所有對象都要共享的變量,這個時候我們就要用到類的靜態(tài)成員,今天通過實例代碼給大家詳細(xì)介紹,需要的朋友參考下吧
    2021-07-07
  • Qt之QTimer使用及技巧小結(jié)

    Qt之QTimer使用及技巧小結(jié)

    QTimer是Qt中的定時器類,用于執(zhí)行定時操作,如在一段時間間隔后觸發(fā)某個槽函數(shù)或執(zhí)行特定的代碼,下面就來介紹一下Qt之QTimer使用及技巧小結(jié),感興趣的可以了解一下
    2023-10-10
  • Qt無邊框窗口拖拽和陰影的實現(xiàn)方法

    Qt無邊框窗口拖拽和陰影的實現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于Qt無邊框窗口拖拽和陰影的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 關(guān)于C++出現(xiàn)Bus error問題的排查與解決

    關(guān)于C++出現(xiàn)Bus error問題的排查與解決

    項目代碼中經(jīng)常出現(xiàn)莫名其妙的Bus error問題,并且代碼中增加很多try catch 后依然不能將錯誤捕獲,一旦Bus erro出現(xiàn),進程直接崩潰掉,所以本文給大家介紹了關(guān)于C++出現(xiàn)Bus error問題的排查與解決,需要的朋友可以參考下
    2024-01-01
  • Qt實現(xiàn)語言切換的完整指南

    Qt實現(xiàn)語言切換的完整指南

    這篇文章主要為大家詳細(xì)介紹了如何在Qt中實現(xiàn)語言切換的完整指南,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-04-04
  • C語言實現(xiàn)單鏈表逆序與逆序輸出實例

    C語言實現(xiàn)單鏈表逆序與逆序輸出實例

    這篇文章主要介紹了C語言實現(xiàn)單鏈表逆序與逆序輸出,是數(shù)據(jù)結(jié)構(gòu)與算法中比較基礎(chǔ)的重要內(nèi)容,有必要加以牢固掌握,需要的朋友可以參考下
    2014-08-08
  • C++?vector與數(shù)組轉(zhuǎn)換寫入/讀出文件方式

    C++?vector與數(shù)組轉(zhuǎn)換寫入/讀出文件方式

    這篇文章主要介紹了C++?vector與數(shù)組轉(zhuǎn)換寫入/讀出文件方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11

最新評論