我正在尝试使用(例如)Windows GDI在我的程序中显示一些文本,并且某些unicode字符显示为问号?怎么了?
答案 0 :(得分:7)
在Windows中,尝试显示Unicode字符时会出现两个常见的显示问题:
文字有时会显示为问号
文字有时会显示为方框
答案 1 :(得分:1)
这意味着你的Unicode文本正在某处转换为ANSI文本。由于Latin-1之外的Unicode字符无法转换为ANSI,因此它们将转换为问号。确保您的程序是使用Unicode支持编译的(即预处理器符号UNICODE和_UNICODE由您的项目#defined),因此您始终调用各种Windows函数的正确Unicode版本。
答案 2 :(得分:0)
基本上你已经破坏了文字。您正在使用一种编码中的Unicode文本,然后将其转换为另一种编码,而不检查目标编码是否包含源文本中的所有字符。这样做之后你就会有一堆胡言乱语。
如何做到这一点包括: