views:

58

answers:

1

warning C4566: character represented by universal-charac ter-name '\u2E81' cannot be represented in the current code page (936)

Sometimes we need to display text in various languages such as Russian,Japanese and so on.

But seems a single code page can only show characters of 1 single language ,how can I show characters in various languages at the same time?

+2  A: 

Since you're (apparently) using VC++, you probably want to switch to the UTF-8 code page. You'll also need to set the font to one that has glyphs for all the code points you care about (many have few if any beyond the first 256).

Jerry Coffin
What's that font that has glyphs for all the code points?I need one that support all glyphs since I'm doing internationalization.
Alan
I don't know of one with *all* code points. I kind of doubt such a thing exists. You're pretty much stuck defining what languages you really care about, and finding a font that covers them. I doubt you need the Klingon alphabet, even though encodings for them have been defined.
Jerry Coffin
@Alan: there is no single font that has glyphs for all code points. It doesn't make sense, actually. Such font would be huge and therefore will consume valuable resources (such as memory). There is something called "font fallback mechanism" instead. If the code points are not assigned by your current font, fallback font will be used to display them (provided this fallback font is installed and the mapping exists in registry [CP936 is MS Windows tearm]).
Paweł Dyda