Qt网络编程中中文乱码的问题
嗯,牵扯到 编码 Unicode utf-8 const char * QByteArray QString String
还有万恶的"\0"
列一下我看到的觉得比较好的文章:
socket编程中编码问题
深入 char * ,char ** ,char a[ ] ,char *a[] 内核
C语言中操作字符串是通过它在内存中的存储单元的首地址进行的,这是字符串的终极本质。
我自己实现的时候最后是只用了两个类 一个是QString 一个是QByteArray
凡是展示给用户的就是QString utf-8编码的
凡是利用socket的,就用QString转成QByteArray
具体:
QString str("hello");
QByteArray bytes = str.toUtf8(); // QString转QByteArray方法
QByteArray bytes("hello world");
QByteArray bytes=readAll();
QString string = bytes; // QByteArray转QString方法
嗯,牵扯到 编码 Unicode utf-8 const char * QByteArray QString String
还有万恶的"\0"
列一下我看到的觉得比较好的文章:
socket编程中编码问题
深入 char * ,char ** ,char a[ ] ,char *a[] 内核
C语言中操作字符串是通过它在内存中的存储单元的首地址进行的,这是字符串的终极本质。
我自己实现的时候最后是只用了两个类 一个是QString 一个是QByteArray
凡是展示给用户的就是QString utf-8编码的
凡是利用socket的,就用QString转成QByteArray
具体:
QString str("hello");
QByteArray bytes = str.toUtf8(); // QString转QByteArray方法
QByteArray bytes("hello world");
QByteArray bytes=readAll();
QString string = bytes; // QByteArray转QString方法