【发布时间】:2018-01-08 16:36:59
【问题描述】:
if (lineEditText[i] == 'đ' || lineEditText[i] == 'Đ')
lineEditText.replace(i, 1, "d");
我想将 (i) QString 类型的字符与上面的 unicode 进行比较。但它不起作用。那么如何比较呢?
【问题讨论】:
-
This 可能会有所帮助(并且是重复的)。
-
这可能与字符编码问题有关 - 您的编译器期望什么源编码,源文件是什么编码?它应该在 ISO-8859-1 或 UTF-16 环境中工作,但如果
đ和Đ是多字节字符(例如在 UTF-8 或 ISO-2022-JP 中),则可能会出现问题。值得确保您的编译器警告多字节文字 - 您可以使用简单的'xx'对其进行测试。