C++ 输入áã;字符串得到一个£;A以c+表示的美元+;如何处理?

C++ 输入áã;字符串得到一个£;A以c+表示的美元+;如何处理?,c++,marmalade,C++,Marmalade,我试图在我的代码中使用这种字符,但我无法处理它。 我的搭档说我应该用这个: wstring wmessage(message.begin(), message.end()); textNotify->setText(wmessage); 但是textNotify是一个textActor,所以我不知道该怎么办。我需要转换它,这样我就可以使用它了。有什么想法吗?这个特殊的错误是可以立即识别的:UTF-8被解释为拉丁语-1。我知道,因为你得到两倍的字符和奇数字符是“A”。我打赌他们也有口音,但

我试图在我的代码中使用这种字符,但我无法处理它。 我的搭档说我应该用这个:

wstring wmessage(message.begin(), message.end());
textNotify->setText(wmessage);

但是textNotify是一个textActor,所以我不知道该怎么办。我需要转换它,这样我就可以使用它了。有什么想法吗?

这个特殊的错误是可以立即识别的:UTF-8被解释为拉丁语-1。我知道,因为你得到两倍的字符和奇数字符是“A”。我打赌他们也有口音,但你忘了模仿


主要问题是第一行。这适用于ASCII。可能是您编写的,而不是marmelase,因此您可以在那里使用codecvt(如果您的系统有一个用于utf-8的codecvt)。如果不是的话,UTF-8也不是很难手动转换,少于10行。不过,你必须弄清楚
wchar\u t
是如何编码的,然后决定你是否需要比基本unicode字符更多的字符(你也需要古希腊语吗?

检查这个,我正在使用oxygine framwork和marmalade,我就是做不到。还有其他提示吗?我需要这么快>我有一个像ãá这样的字符串,我需要检查我在复选框中键入的内容是否包含该字符串,但我键入ã,代码试图在该字符串中找到Ã。我怎样才能使它搜索正确,但是有可能使用C++中的字符串来保存这个字符吗?我正在试着看看如何做到这一点,但我没有找到任何这样的例子或类。但是可以肯定的是,我不能得到它,也不能以友好的方式使用它?@user3481379:有相当多的操作运行得相当好,即使使用
std::string
std::find
找不到字符,因为它不是单个的
char
,但是
std::search
可以。但是,果酱在20世纪似乎有点过时了。像Qt这样的框架有更好的Unicode支持。不过,您是否检查过是否有
std::codevt\u utf8
?现代的编译器都是开箱即用的,我真的不知道该怎么办。我不知道我是否愿意转换我收到的信息,而不是使用它,或者转换我想找到的字符,我真的不知道如何。。。我不能使整个项目utf8,我只需要在字符串“ãáá”中找到我键入的ãall@user3481379:这是你问的另一个问题;我们没有水晶球。我找了很多,但我仍然陷在这里面。有人说我应该把locate改成葡萄牙语,另一个想法是用ascii码来表示字符。但我所需要的只是将拉丁语-1转换为utf8。这不可能,没有一个类可以让我输入拉丁语-1字符串并返回utf8?