首页 > 其他 > 详细

Qt QDataStream 读写文件

时间:2019-07-06 17:29:11      阅读:142      评论:0      收藏:0      [点我收藏+]

项目目录:

技术分享图片

widget.h:

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();

    //定义一个写函数
    void writeData();

    //定义一个读函数
    void readData();

private:
    Ui::Widget *ui;
};

#endif // WIDGET_H

 

widget.cpp:

#include "widget.h"
#include "ui_widget.h"

#include <QDataStream>
#include <QFile>
#include <QDebug>
#include<QTextStream>//读写的时候可以指定编码
#define cout qDebug()<<"["<<__FILE__<<":"<<__LINE__<<"]"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    writeData();
    readData();
}

Widget::~Widget()
{
    delete ui;
}
void Widget::writeData()
{
    //创建对象
    QFile file ("../test.txt");

    //打开文件,只写方式打开
    bool isOk = file.open(QIODevice::WriteOnly);
    if (isOk == true )
    {
        //创建数据流,和file文件关联
        //往数据流中写数据,相当于往文件里写数据
        QDataStream stream(&file);

        stream<<QString ("主要看气质")<<250;
        file.close();

    }

}
void Widget::readData()
{
    //创建对象
    QFile file ("../test.txt");

    //打开文件,只读方式打开
    bool isOk = file.open(QIODevice::ReadOnly);
    if (isOk == true )
    {
        //创建数据流,和file文件关联
        //往数据流中读数据,相当于往文件里读数据
        QDataStream stream(&file);

        //读的时候,按照写的顺序取数据
        QString str;
        int a;

        stream>>str>>a;

        //打印,如果没有出现想要的结果,试试下面那一句
//        qDebug()<<str<<a;
//        qDebug()<<str.toUtf8().data()<<a;
        cout<<str.toUtf8().data()<<a;
        file.close();

    }
}

Qt QDataStream 读写文件

原文:https://www.cnblogs.com/doker/p/11143167.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!