zoukankan      html  css  js  c++  java
  • Qt txt文本中获取字符串的问题

    QT对txt文本进行读写一般是采用QFile和QTextStream结合使用,在此不细说,主要说一下读取txt文本的注意事项。因为txt文本中有中文也有英文还有数字,要准确获得需要的字串可就要多一个心眼了。因为在使用QString对文本读取时,使用的是Unicode编码,这时,一个汉字占2个字节,一个字母占一个字节,一个数字占一个字节。

     以以下代码作为示例:

    QString str("我的csdn博客");
    str.size();   //返回值8
    str.left(3);  //返回值   “我的c”
    str.mid(2,3); //返回值   “csd”

    从以上可以看出,QString中的成员函数计算的是字符的个数

     当使用QByteArray时,

    QString str("我的csdn博客");
    QbyteArray ba=str.toAscii();
    str.size();   //返回值12
    str.left(4);  //返回值   “我的”
    str.mid(2,4); //返回值   “的cs”

     可以看出,QByteArray中的成员函数计算的是字节的个数

     所以,在需要准确获得txt中的字符时,要注意txt的格式,根据txt的格式使用相应的方法获取需要的字符串。

     结束语:其中的缘由本人也还未搞清楚,可能与qt中的编码有深厚的关系,有时间再来分析,可参见如下链接:

     http://zhidao.baidu.com/question/352325355.html

     http://blog.csdn.net/brave_heart_lxl/article/details/7186631

  • 相关阅读:
    memset使用技巧
    04.碰撞反应
    03.键盘状态跟踪与精灵删除
    02.基本动作
    01.基本图形
    00.入门
    03.交互--鼠标,键盘
    02.action--新增精灵知识点
    01.helloworld--标签
    05.声音
  • 原文地址:https://www.cnblogs.com/Romi/p/3329149.html
Copyright © 2011-2022 走看看