当前位置: 首页 > wzjs >正文

网站个人备案域名解析在线查询

网站个人备案,域名解析在线查询,深圳建一个网站多少钱,怎样在别人网站做加强链接QT中的文件IO 一、有关文件IO的类二、步骤1、定义QFile的对象,与要读写的文件绑定在一起2、打开文件3、读写文件1)读取文件2)写入文件 4、关闭文件5、示例代码: 三、QString和QByteArray之间的转换1、方法2、示例代码: 四、QFileI…

QT中的文件IO

  • 一、有关文件IO的类
  • 二、步骤
    • 1、定义QFile的对象,与要读写的文件绑定在一起
    • 2、打开文件
    • 3、读写文件
      • 1)读取文件
      • 2)写入文件
    • 4、关闭文件
    • 5、示例代码:
  • 三、QString和QByteArray之间的转换
    • 1、方法
    • 2、示例代码:
  • 四、QFileInfo类 --》获取文件属性
    • 1、方法
  • 五、QDir类 --》QT中的目录操作
    • 1、方法
    • 2、示例代码(与QFileInfo配合使用)

一、有关文件IO的类

QFile 表示某个文件对象
QDir 表示某个目录对象
QFileInfo 存放文件的属性信息(文件大小,文件类型等等)

二、步骤

1、定义QFile的对象,与要读写的文件绑定在一起

QFile::QFile(const QString &name)
参数:name --》需要读写的文件路径名

2、打开文件

bool QIODevice::open(OpenMode mode)返回值:成功 true  失败 false参数:QIODevice::ReadOnly    //只读QIODevice::WriteOnly   //只写QIODevice::ReadWrite   //只读写
新建文件  open(QIODevice::WriteOnly|QIODevice::Truncate)

3、读写文件

1)读取文件

qint64 QIODevice::read(char *data, qint64 maxSize)返回值:成功 返回读取的字节数  失败 -1参数:data --》保存读取的数据maxSize --》读取多少字节的数据QByteArray QIODevice::read(qint64 maxSize)返回值:读取的数据参数:maxSize --》读取多少字节的数据
QByteArray QIODevice::readAll()  //一次性读取整个文件内容,适合读取小文件
qint64 QIODevice::readLine(char *data, qint64 maxSize) //一次最多读取一行文件数据
类比:fgets

2)写入文件

qint64 QIODevice::write(const char *data, qint64 maxSize)
qint64 QIODevice::write(const QByteArray &byteArray)

4、关闭文件

void QIODevice::close()

5、示例代码:

// mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private slots:void on_pushButton_clicked();private:Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H// mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QFileDialog>
#include <QDebug>
#include <QMessageBox>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);
//    ui->textBrowser->setText("你好,世界aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
}MainWindow::~MainWindow()
{delete ui;
}// pushbutton 右键转到槽
void MainWindow::on_pushButton_clicked()
{QString pathName = QFileDialog::getOpenFileName(this);// 创建文件对象QFile myFile(pathName);// 打开文件bool ret = myFile.open(QIODevice::ReadWrite);if (!ret){QMessageBox::warning(this, "警告", "文件打开失败");return;}// 读取文件内容// char buf[100]={0};// myfile.read(buf,100); //读取100个字节存放到buf中// qDebug()<<"读取的内容: "<<buf;// QByteArray buf=myfile.read(100);  //读取100个字节,以返回值的形式返回// QByteArray叫做字节数组,里面的内容是16进制的形式显示// 把QByteArray转换成QString  QString(const QByteArray &ba)// QString str(buf);// qDebug()<<"读取的内容: "<<str;// 一次性读取整个文件(视频几十M以上的无法读取)QByteArray buf=myFile.readAll();//在文本浏览框中显示ui->textBrowser->setText(buf);//关闭文件myFile.close();
}

三、QString和QByteArray之间的转换

1、方法

QByteArray --》QString   自动转换,调用了构造函数
QString --》QByteArray   必须使用函数转换  QByteArray QString::toUtf8()
char * --》QString       自动转换,调用了构造函数
QString --char *       调用QString中的data()方法

2、示例代码:

// mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private:Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H// mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QByteArray>
#include <QString>
#include <QDebug>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);// 1、QByteArray --》QString   自动转换(调用了构造函数)QByteArray byteArry("你好,世界");QString str1 = byteArry;  // 跟QString str1(byteArry)等价的qDebug()<<"str1:"<<str1;  // str1: "你好,世界"// 2、QString --》QByteArray   必须使用函数转换  QByteArray QString::toUtf8()QString str2="helloworld";QByteArray array2=str2.toUtf8();qDebug()<<"array2:"<<array2;  // array2: "helloworld"// 3、char * --》QString       自动转换(调用了构造函数)char buf[10]="你好";QString str3=buf;  //跟QString str3(buf)等价的qDebug()<<"str3:"<<str3;  // str3: "你好"// 4、QString --》char *       调用QString中的data()方法QString str4="nihao";QChar *p=str4.data();qDebug() << "通过循环逐个输出字符:";for (int i = 0; p[i] != '\0'; ++i){qDebug() << p[i];}
}MainWindow::~MainWindow()
{delete ui;
}

四、QFileInfo类 --》获取文件属性

1、方法

QFileInfo::QFileInfo(const QString &file)参数:file --》文件的路径名
QString QFileInfo::filePath() const  //获取文件的路径名
bool QFileInfo::isDir() const        //判断文件是否是目录
qint64 QFileInfo::size() const       //获取文件大小
QString QFileInfo::suffix() const    //获取文件的后缀名

五、QDir类 --》QT中的目录操作

1、方法

第一步:新建QDir的对象,跟某个目录的路径绑定一起
QDir::QDir(const QString &path = QString())参数:path --》要遍历的目录的路径名
第二步:遍历目录,得到目录的文件名
QStringList QDir::entryList() const返回值:字符串列表中存放了目录中所有的文件名字

2、示例代码(与QFileInfo配合使用)

// mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private slots:void on_pushButton_clicked();private:Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H// mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QFileDialog>
#include <QDir>
#include <QDebug>
#include <QFileInfo>
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);
}MainWindow::~MainWindow()
{delete ui;
}// 打开目录
void MainWindow::on_pushButton_clicked()
{// 打开目录对话框QString dirpath=QFileDialog::getExistingDirectory(this,"我的目录");//qDebug()<<"选择的目录是: "<<dirpath;// 创建QDir的对象表示某个目录QDir mydir(dirpath);// 遍历目录QStringList filelist=mydir.entryList();for(auto x:filelist)qDebug()<<"选择的目录中包含了: "<<x;// 获取文件的属性QFileInfo info("C:/Users/Administrator/Desktop/vm_share/笔记/1.txt");// 获取文件大小qDebug()<<"文件大小是: "<<info.size();qDebug()<<"文件后缀名是: "<<info.suffix();}
http://www.dtcms.com/wzjs/153549.html

相关文章:

  • 上海市建设网站长沙网站推广服务公司
  • 兴义网站seo电脑系统优化软件
  • 建设银行网站苹果电脑石家庄新闻网头条新闻
  • 免费网站建设代理长尾关键词排名系统
  • 公司网站建设哪儿济南兴田德润实惠吗网站制作app
  • 养殖网站 模板西安seo服务外包
  • 鼓楼做网站价格搜索引擎优化的英文缩写是什么
  • wordpress建站 客户端临沂做网络优化的公司
  • 网站开发颜色代码写文章在哪里发表挣钱
  • 购物网站开发背景及意义宁波网站快速优化
  • 网站设计论文摘要百度网盘客服人工电话
  • 网奇e游通旅游网站微信客户管理
  • 做网站一般收取多少钱如何做好线上推广和引流
  • 网站 建设 方案深圳全网推广平台
  • 语言互动网站建设百度推广代理商加盟
  • 关于建设人才网站的竞争对手分析关键词排名seo优化
  • 公司做网站最好软文代写兼职
  • 广告公司寮步网站建设哪家好在哪里可以找到网站
  • 第一次做网站时是怎样的心情天津百度分公司
  • 郑州做网站的论坛推广产品的渠道
  • 城市规划做底图的网站爱站网官网查询域名
  • 全校网站建设与管理b2b国际贸易平台
  • 多语言网站建设价格广州营销优化
  • 手机p2p网站图片外链
  • 搜狐做app的网站长沙网站开发制作
  • 网站制作代理今日新闻最新头条10条内容
  • 做网站除了有服务器还需要什么问题武汉seo搜索优化
  • 大连网站建设怎么做如何快速提升网站关键词排名
  • 北京免费网站建设模板引擎搜索大全
  • 做调查问卷赚钱哪个网站好宁海关键词优化怎么优化