7

代替テキスト

Perlで192文字の記号(└)を表示するにはどうすればよいですか?

4

5 に答える 5

11

あなたが望むのは、ユニコードを出力できるようにすることであり、答えはperldoc perluniintro.

\x{nnnn}n は 16 進数の識別子を使用するか、次\N{...}の名前を使用できます。

perl -E 'say "\x{2514}"; use charnames; say "\N{BOX DRAWINGS LIGHT UP AND RIGHT}"'
于 2010-09-20T15:47:11.200 に答える
8

これらのコードを正確に使用するには、端末がフレームを含むCode Page 437をサポートしている必要があります。または、派生したCP850を使用して、ボクシング文字を少なくすることもできます。このようなボクシング文字は、Unicode ブロック要素としても存在します。perl で必要な char は として示され\N{U+2514}ます。詳細はperlunicodeで

于 2010-09-20T15:52:47.327 に答える
5

これは、コード ページ 437 エンコーディングのように見えます。Perl はおそらく、与えられたバイトを出力しているだけです。そして、あなたの端末はおそらくUTF8を期待しています。

したがって、Unicode にデコードしてから、UTF-8 に再エンコードする必要があります。

編集:正しいエンコーディング。

于 2010-09-20T15:48:49.980 に答える
3

いつものように、Jon Skeet はそれを釘付けにしています:192コードは「拡張 ASCII」の範囲にあります。@Douglas Leeder のアドバイスに従うことをお勧めしますが、www.LookupTables.com がどのエンコーディングを提供しているかはわかりません。ISO-8859-1は 192 が "À" にマップするとMac OS Roman考え、その "¿" を考えます。

于 2010-09-20T16:02:21.277 に答える