开发者

Unicode strings in my C# App are shown with question marks

开发者 https://www.devze.com 2022-12-24 03:07 出处:网络
I have a header file in C++/CLI project, which contains some strings in different languages. arabic, english, german, chinese, french, japanese etc...

I have a header file in C++/CLI project, which contains some strings in different languages. arabic, english, german, chinese, french, japanese etc...

I have a second project written in C#. Here I access the strings stored in the header file of the C++/CLI project.

The encoding of the header file is Unicode - Codepage 1200 or UTF-8. the visual studio editor is able to display the strings correctly. At runtime I access these strings and assign them into a local String variable. Here I recognized that many strings are not shown correctly. Doesn't matte开发者_如何学Pythonr if I assign them or not. Accessing the original place (while debugging) shows me all the foreign strings with question marks. Especially chinese, just question marks.

Example : "So?e St?ange ?ext in Ch?n?se" (This is not the best example, I know)

What is the problem? I read that C# is by default UTF-16, My header file containing the strings is UTF-16 or UTF-8.

I must be able to handle strings in different languages. What am I doing wrong?


The '?" means that the text is read as Unicode(UTF16) and somehwere there is a conversion to your current code page. Since your current codepage is NOT chinese the chinese chararcters will get transformed to '?'

It would be helpful to see the code.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号