如何在Perl中显示扩展ASCII代码字符?

时间:2010-09-20 15:40:17

标签: perl ascii extended-ascii

alt text

如何在perl中显示192个字符符号 (└)

4 个答案:

答案 0 :(得分:11)

您想要的是能够打印unicode,答案在perldoc perluniintro

您可以使用\x{nnnn},其中n是十六进制标识符,或者您可以\N{...}使用名称:

perl -E 'say "\x{2514}"; use charnames; say "\N{BOX DRAWINGS LIGHT UP AND RIGHT}"'

答案 1 :(得分:8)

要准确使用这些代码,您的终端必须支持包含框架的Code Page 437。或者,您可以使用带有较少装箱字符的派生CP850。 这样的拳击角色也存在Unicode Block Elements。你想要在perl中的char被标记为\N{U+2514}perlunicode

中的更多详细信息

答案 2 :(得分:5)

看起来像Code 437编码。 Perl可能只是输出你给它的字节。你的终端可能期待UTF8。

因此您需要将其解码为Unicode,然后以UTF-8重新编码。

编辑:正确编码。

答案 3 :(得分:3)

像往常一样,Jon Skeet指出:192代码位于“extended ASCII”范围内。我建议您关注@Douglas Leeder's advice,但我不确定www.LookupTables.com为您提供哪种编码方式; ISO-8859-1认为192张地图为“À”,Mac OS Roman认为其为“¿”。