zoukankan      html  css  js  c++  java
  • 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()修改。

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

  • 相关阅读:
    【反射】Java反射机制
    Composer教程之常用命令
    Composer教程之基础用法
    Composer教程之初识Composer
    Composer 的结构详解
    现代 PHP 新特性系列(七) —— 内置的 HTTP 服务器
    现代 PHP 新特性系列(一) —— 命名空间
    现代 PHP 新特性系列(二) —— 善用接口
    现代 PHP 新特性系列(三) —— Trait 概览
    现代 PHP 新特性系列(四) —— 生成器的创建和使用
  • 原文地址:https://www.cnblogs.com/Pan-Z/p/6393017.html
Copyright © 2011-2022 走看看