Qt QString包含和特殊字符

Qt QString包含和特殊字符,qt,special-characters,qstring,Qt,Special Characters,Qstring,我有一个Qstring,它包含一些字符和“Å” 使用MatchString.contains('Å')返回false 我对这个函数的理解有一些错误?当您编写'Å'时,编译器将其视为ASCII字符,而Å是unicode字符。因此,请使用L'Å'。查看此处了解更多信息: 此外,如果未使用UTF-8编码保存源文件,或者您的平台不支持无符号的字符类型,则可能会得到不同的结果QChar使用Unicode值的对象: if (MatchString.contains(QChar(0xc5))) {

我有一个
Qstring
,它包含一些字符和
“Å”

使用
MatchString.contains('Å')
返回false


我对这个函数的理解有一些错误?

当您编写
'Å'
时,编译器将其视为ASCII字符,而
Å
是unicode字符。因此,请使用
L'Å'
。查看此处了解更多信息:


此外,如果未使用UTF-8编码保存源文件,或者您的平台不支持无符号的
字符
类型,则可能会得到不同的结果
QChar
使用Unicode值的对象:

if (MatchString.contains(QChar(0xc5))) {
    ...
}

MatchString.contains(QChar(0xc5))
产生了什么?我不会将其作为答案发布,因为已经找到了解决方案,但尝试用“”编写:contains(“Å”),而不是“”。我认为在你的情况下,它也会起作用。已经尝试过了,但不幸的是,这个解决方案似乎不适用于Windows。