问题
Is there any way to write Hebrew in the Windows Console?
I tried the following:
Console.OutputEncoding = new UTF8Encoding(false);
Console.WriteLine("\u05D0\u05D1");
Console.ReadLine();
but instead of "אב" it writes some other Unicode character, that're not in the Hebrew ABC.
Any ideas why?
回答1:
If you can call chcp
command before your program, you can change the codepage to Hebrew and then your characters will be readable. There is an interesting article about internationalization and windows console here: http://illegalargumentexception.blogspot.com/2009/04/i18n-unicode-at-windows-command-prompt.html
回答2:
Simply change the OutputEncoding:
Console.OutputEncoding = Encoding.GetEncoding("Windows-1255");
回答3:
Console.OutputEncoding = new UTF8Encoding();
Console.WriteLine("\u05D0\u05D1");
Console.WriteLine("אריאל");
Console.WriteLine(new string("אריאל".Reverse().ToArray()));
works for me, maybe is just about removing the "false"? this is working in my machine, except o.c. it writes the letters backwards, unless i use reverse
maybe you need to set the registry? run -> regedit and do this: http://blogs.microsoft.co.il/technet/2013/06/11/%D7%90%D7%99%D7%9A-%D7%90%D7%A4%D7%A9%D7%A8-%D7%9C%D7%A8%D7%90%D7%95%D7%AA-%D7%A2%D7%91%D7%A8%D7%99%D7%AA-%D7%91-powershell-console/
in the registry window rightclick choose new string.
回答4:
Correct me if I'm wrong but I don't think the console supports UTF8.
回答5:
In case you just want it for short testing purposes and not to build an entire application, just use Debug.WriteLine that does support unicode (tested with heb chars only).
来源:https://stackoverflow.com/questions/2213600/is-there-any-way-to-write-hebrew-in-the-windows-console