做一个日志解析工具遇到的问题

  QFile readFile(strPath);
  readFile.open(QIODevice::ReadOnly |QIODevice::Text);
    QByteArray by;
    char *bf;
    by = readFile.readAll();

    bf = by.data();
    readFile.close();
发现读出来的数据不正确。打开属性带 QIOdevice::Text 这会是的‘\n’d读不出。应该去掉。

文件打开模式


模式 描述
QIODevice::NotOpen 0x0000 不打开
QIODevice::ReadOnly 0x0001 只读方式
QIODevice::WriteOnly 0x0002 只写方式,如果文件不存在则会自动创建文件
QIODevice::ReadWrite ReadOnly | WriteOnly 读写方式
QIODevice::Append 0x0004 此模式表明所有数据写入到文件尾
QIODevice::Truncate 0x0008 打开文件之前,此文件被截断,原来文件的所有数据会丢失
QIODevice::Text 0x0010 读的时候,文件结束标志位会被转为’\n’;写的时候,文件结束标志位会被转为本地编码的结束为,例如win32的结束位’\r\n’
QIODevice::UnBuffered 0x0020 不缓存
 
posted on 2020-12-01 17:34  七星落地  阅读(1597)  评论(0编辑  收藏  举报