• Qt


             QFile 类提供了读取文件的接口。继承于QFileDevice.

             QFile 是一种IO设备,用来读写文本和二进制文件和资源。QFile可单独使用,但和QTextStream或QDataStream一起使用更方便。

             文件名可以通过构造函数传入,但也可使用setFileName()函数随时传入。QFile使用'/'作为分隔符,其他分隔符(如‘’)不支持。

             检查一个文件是否存在使用exists(),移除一个文件使用remove()。更多文件系统相关操作在QFileInfo和QDir中提供。

             文件打开使用open(),关闭使用close(),刷新flush()。数据读和写通常用QDataStream或QTextStream,但也可调用从QIODevice继承的函数read(),readLine(),readAll(),write().QFile也继承了getChar(),putChar(),和ungetChar()用于操作字符。

             文件大小通过size()返回。当前文件位置pos(),移动到新的文件位置用seek()。如果到达文件结尾,atEnd()返回true。

             下面示例按行读取文本文件:

    QFile file("in.txt");
    
          if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
    
              return;
    
     
    
          while (!file.atEnd()) {
    
              QByteArray line = file.readLine();
    
              process_line(line);
    
          }
    

             open() 传入的QIODevice::Text标志告诉Qt将Windows风格的行终止符(" ")转换为C++风格的终止符(" ")。 QFile默认操作二进制文件,如QFile不执行任何转换。

             下述示例使用QTextStream按行读取文本文件:

    QFile file("in.txt");
    
          if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
    
              return;
    
     
    
          QTextStream in(&file);
    
          while (!in.atEnd()) {
    
              QString line = in.readLine();
    
              process_line(line);
    
          }

    QTextStram会将存储在磁盘中8位数据转换为16位的Unicode 字符串。默认地,它认为用户系统本地编码是8位(如,大多数Unix系统的UTF-8),可以通过QTextStream::setCodec()修改。

             写文本,可以使用<<()操作符。

  • 相关阅读:
    Mybatis中#{}和${}传参的区别
    笔记摘抄 —— shiro学习篇
    使用Spring的Testcase的单元测试的写法
    【转】FreeMarker学习笔记
    破解Pycharm,IDEA,PhpStrom等系列产品的,有关JetbrainsCrack的使用方法
    Python的字符串
    python的变量
    python开头注释
    h5-动画小案例-滚动展示
    h5-钟表动画案例
  • 原文地址:https://www.cnblogs.com/Pan-Z/p/6393017.html
Copyright © 2020-2023  润新知