Dae*_*yth 11
你想要的是能够打印unicode,答案就在于perldoc perluniintro
.
您可以使用\x{nnnn}
其中n是十六进制标识符,或者您可以\N{...}
使用名称:
perl -E 'say "\x{2514}"; use charnames; say "\N{BOX DRAWINGS LIGHT UP AND RIGHT}"'
Run Code Online (Sandbox Code Playgroud)
要准确使用这些代码,您的终端必须支持代码页437,其中包含框架.或者,您可以使用带有较少装箱字符的派生CP850.这种装箱字符也作为Unicode块元素存在.你想要在perl中的字符被标记为\N{U+2514}
.perlunicode的更多细节
这看起来像Code 437编码.Perl可能只是输出你给它的字节.而你的终端可能期待UTF8.
因此,您需要将其解码为Unicode,然后以UTF-8重新编码.
编辑:正确的编码.