我试图在控制台应用程序上输出 θ (theta),我在 Google 上搜索,发现我必须使用 Unicode 来输出任何希腊符号。所以我使用的代码是:
Console.WriteLine("\u03B8 (deg) R (m) \t T (kN) FOS");
但不是打印“θ”,而是“?” 被打印。有人可以给我建议吗?
如果要输出到控制台,则必须将代码页更改为可以理解 unicode 的内容。您可以通过 chcp 65001
在命令提示符下键入来执行此操作。您还必须将字体更改为 Lucida Console 或 Consolas:
编辑:当然也可以在 C# 中进行:
public static void Main()
{
Console.OutputEncoding = System.Text.Encoding.Unicode;
Console.WriteLine("\u03B8");
Console.ReadLine();
}
我认为您仍然必须手动(或通过非托管代码)按摩字体。
See How to make Unicode charset in cmd.exe by default?
The answers to this question explain how to set up cmd.exe
to display Unicode characters.
Specifically, this answer suggests changing the registry:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
OEMCP
value to 65001