C# Unicode(日语字符)

5

我很快就要参加日语期末考试了,为了帮助我学习,我制作了一个辅助学习的程序。但是,我似乎无法让VS2008在控制台中显示任何Unicode字符。以下是我用来测试能否显示Unicode的示例:

    string diancai = new string(new char[]{ '\u70B9','\u83DC' });

    Console.Write(diancai[0] + " " + diancai[1]);

输出结果如下:

    ? ?

请帮忙!谢谢!

3个回答

3

前往命令提示符并尝试输入"chcp"命令

应该是这样的:

C:\> chcp
現在のコード ページ: 932

932是日语编码,如果代码页不正确或者你的Windows系统不支持,控制台就无法显示它。

我可以在我的电脑上运行你的程序,在我的电脑上会显示以下字符,因为我的系统是日语版的Windows。

点 菜
所以,针对您的情况,我建议您尝试使用GUI程序而不是控制台。

我已经执行了这个命令,结果如下: C:\> chcp 当前代码页: 437有没有可能将其更改为932? - Hassaan M
尝试使用“chcp 932”命令,然后尝试复制粘贴“点菜”。如果您无法看到它,这意味着您无法执行该操作。请尝试使用GUI界面。 - YOU
哦,我明白了...嗯,这可能有点过分,但你能否给我提供一个示例代码,向我展示如何使用GUI窗口显示字符?这是我第一次在C#中编程,我的期末考试即将到来。 - Hassaan M
是的,这意味着你的Windows不支持它,在Visual C#中,有一个名为“C# Windows应用程序”的新项目选项,所以请继续尝试,我假设你已经了解C#语言本身。 - YOU
所以在控制台中没有使用UTF8的方法吗?我正在尝试使用这个单词:“Đức”,但它不起作用。 - DucDigital
显示剩余2条评论

2
这需要满足两个条件才能正常工作:
  1. 控制台的输出编码必须能够表示日语字符
  2. 控制台的字体必须能够渲染它们
满足条件1应该比较简单;只需将 System.Console.OutputEncoding 设置为适当的 Encoding,例如 UTF8Encoding。(当然,在 Windows 9x 上无法使用此方法,因为它不支持编码或 Unicode。但是你现在没有使用那个系统,对吧?) 满足条件2需要更多步骤: 首先,用户必须在其系统上安装适当的字体。如果尚未安装任何字体,则用户需要安装一些字体,例如:
  • 打开 intl.cpl(在英语中的 Windows XP 控制面板中为“区域和语言选项”)
  • 转到“语言”选项卡
  • 启用“安装东亚语言文件”
  • 点击“确定”
实际上让控制台使用这样的字体似乎相当麻烦;有关更多信息,请参见问题:如何在 Windows 下在 cmd 窗口中显示日语汉字?

1

我使用Windows XP英文版。但是我设置了我的操作系统,以便它能显示日语字符。

对于Windows XP,这是步骤:

1. 控制面板->区域和语言选项->高级

2. 选择日语。

3. 选择您使用的语言的代码页转换表。

4. 点击“确定”按钮。

5. 重新启动您的计算机。

我尝试在命令提示符上使用“chcp”命令。

它显示:活动代码页932。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,