web-dev-qa-db-ja.com

windows XPコマンドラインエンコーディング

地域の文字を含むファイルで「type」コマンドを実行すると問題が発生します。メモ帳やその他のエディターでファイルを正しく表示できますが、コマンドラインから「ファイルの入力」コマンドを実行しようとすると、地域の文字が正しく表示されません。

Chcp850またはchcp1250を実行しようとしましたが、機能しません。 cmd.exe/uの実行も機能しません。

手伝ってもらえますか?ありがとう

1
Luisclin

コードページ

`chcp 'コマンドで使用されるコードページは、ファイルで使用されるエンコーディングと一致するように設定する必要があります。

Notepadがファイルを認識する場合、それはNotepadが認識するエンコーディングの1つである必要があります。

  • ANSI .................通常はWindowsLatin-1、コードページ1252。
  • Unicode ..............バイト順マーク(BOM)を使用したUTF-16リトルエンディアン。
  • Unicode Big-endian ...BOMを使用したUTF-16ビッグエンディアン。
  • UTF-8.................UTF-8とBOM。

したがって、ファイルがUTF-8 Unicodeでエンコードされている場合は、chcp 65001を使用できます。

Barlopが以下にコメントしているように、「UTF-16コードページはコマンドプロンプトウィンドウではサポートされていません。」したがって、UTF-16ファイルのデータを表示するには、メモ帳または別の適切なツール(おそらく iconv または recode)を使用してそのようなファイルをUTF-8に変換するのが最善の方法です。 )。

フォント

また、コマンドプロンプトウィンドウのフォントを、表示する必要のある特定の文字を含むフォントに設定する必要があります。たとえば、必要に応じてLucidaConsoleです。これは、ウィンドウのタイトルバーのコンテキストメニュー(マウスの右ボタンクリック)から実行でき、[プロパティ]オプションを選択します。

文字セットに必要な特定の文字が含まれている等幅フォントがある場合は、 これらの手順 を調整して、コマンドプロンプトウィンドウでそのフォントを使用することができます。

enter image description here

enter image description here

も参照してください

関連する質問を参照してください https://stackoverflow.com/questions/4572393/Perl-unicode-glitch

5
RedGrittyBrick

cmd /a type filenameを使用すると、ファイルがUnicodeからANSIに変換されます。

cmd /u type filenameは、現在のコードページを使用してASCIIファイルをUnicodeファイルに変換できます。

2
trindflo