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点击打开链接


  • 相关阅读:
    JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString
    VS2012 MVC4 学习笔记-概览
    java中运算符的解析和计算
    Python基本数据类型之tuple
    Python基本数据类型之list
    Python基本数据类型之str
    Python基本数据类型之int
    range和xrange梳理
    python编码
    ubuntu下的ssh
  • 原文地址:https://www.cnblogs.com/pangblog/p/3327536.html
Copyright © 2011-2022 走看看