gpt4 book ai didi

c# - Console.Write() - 显示扩展 ascii 字符?

转载 作者:行者123 更新时间:2023-12-02 03:02:13 25 4
gpt4 key购买 nike

我能够正确显示标准 ASCII 符号(最多 127 个),例如“heart”、“note”,你知道我的意思。我还想展示那些可以用来画墙的东西(比如U0205),但它不起作用……好吧,它起作用,但它看起来像“?”。我有什么办法可以显示它们吗?谢谢。

最佳答案

控制台模式应用程序仅限于 8 位代码页编码。许多机器上的默认值是 IBM437,该代码页与旧的 IBM PC 字符集相匹配。您可以通过分配 OutputEncoding 属性来更改代码页:

        Console.OutputEncoding = Encoding.UTF8;

但现在您通常会遇到字体问题。控制台默认使用终端字体,这是一种旧的设备字体,其字形位于正确的位置以生成 IBM PC 字符集。没有很多可用的字体可以生成与 Unicode 代码点匹配的正确字形。 Consolas 就是这样,可在 Vista 和 Win7 上使用。

但这不是你要问的,我想,我猜你实际上是在问旧的盒子绘图角色。无需对控制台设置进行任何修改即可工作,您只需使用正确的 Unicode 字符即可。下面是一个复制粘贴后仍能保存的示例:

class Program {
static void Main(string[] args) {
Console.WriteLine("╒════════╕");
Console.WriteLine("│ Hello │");
Console.WriteLine("│ world │");
Console.WriteLine("╘════════╛");
Console.ReadLine();
}
}

要查找这些字符,请使用 Windows charmap.exe 小程序。单击“高级 View ”复选框并在“搜索”文本框中键入“box”,网格将填充方框绘图字符。第一个可以正确转换到控制台的可用的是“\u250c”。

关于c# - Console.Write() - 显示扩展 ascii 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3948089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com