Windowsソースコードなどのテキストファイルを共有すると、エディタなどで開いたときに日本語が文字化けすることがあります。そのときの対処方法です。nkf使い方エンコードタイプコンピューターは基本的に数値で物事を判別し処理します。コンピューターが扱う文字もその仕組で処理します。26文字の英語のアルファベットも数値に変換されて処理します。日本語も同様に数値に変換されてコンピューターは識別し処理します。この変換のことをエンコードといい、アルファベットはどの種類のコンピューターでも同じ数値データが割り当てられます。英語で書かれたテキストファイルはそれを作成したコンピューターと違うコンピューターで表示しても文字化けはしません。ところが日本語はコンピューターの種類によって(正確にはOSの種類によって)、日本語を扱うときのエンコードが異なります。UnixはEUC、WindowsはShift_JIS、MacはMacJapaneseやUTF-8など異なったエンコードタイプでテキストを扱います。するとWindowsでテキストファイルを作って、Macでそれを表示すると文字化けが発生して読めません。ソースコードなどのテキストファイルを共有したら、文字化けが発生するのはこういった理由があるからです。どのOSも全てのエンコードタイプを扱えるようになっているのですが、デフォルトで扱うエンコードタイプが異なるので文字化けが発生するのです。いった混乱を防ぐため現在では、テキストファイルを作成するときのエンコードタイプをデフォルトでUTF-8にしましょうという風潮になっています。ソースコードは、一部のシステムやサービスではUTF-8を要求事項としているものもあります。いっても、現実的にはそうはいきません。文字化けは発生するので、その場合はどのように対処すればいいのかをまとめます。エンコーディングを変換するテキストファイルを表示するには、Windowsのメモ帳やMacのテキストエディタ、それから各種ソースコードを編集するためのエディタなどがあると思います。現在ではテキストのエンコードタイプを自動で判別して表示してくれるものが多いですが、自動で判別してくれないときはエンコードタイプを設定から自分で切り替えると表示されます。そこで、表示できるようになるだけで良い場合は問題ないですが、そのテキストファイルのエンコードタイプを変換して保存したい場合は、方法がアプリやツールによって異なります。ここではその方法をまとめたいと思います。大きく分けて3種類の方法となります。プログラミングするときに使う有名なエディタATOMとVSCodeを使った方法このようなエディタが無い場合、Windowsのメモ帳やMacのテキストエディタを使った方法コマンドラインツールを使った方法となります。ATOMを使って変換ATOMでは設定を変更しない限りデフォルトのエンコードタイプはUTF-8となっています。Shift_JISで作成したテキストファイルを表示すると以下のように文字化けします。ATOMの画面下に表示しているエンコードタイプをクリックしてShift_JISに変更すると正しく表示されます。このまま編集して保存してもエンコードタイプはShift_JISのままです。これをUTF-8に変換したいときは拡張パッケージを使います。・ConvertToUTF8まずは設定からパッケージをインストールします。インストールパッケージから「convert-to-utf8」を探してインストールします。このパッケージはメニューから選択するだけでエンコードタイプをUTF-8に変換してくれます。Shift_JISをUTF-8に変換したい場合は、「Packages」ー「ConvertToUTF8」ー「Japanese(Shift_JIS)」を選択します。するとファイルの中身をUTF-8に変換してくれるので、このままファイルを保存すれば完了です。VSCodeを使って変換VSCodeもデフォルトのエンコードタイプはUTF-8になっています。これもShift_JISで作成したテキストファイルを表示すると文字化けします。VSCodeを使って変換するときは拡張機能はいりません。デフォルトで変換できる機能があります。VSCode画面下に表示しているエンコードタイプをクリックして以下のメニューを表示します。表示されたメニューの「エンコード付きで再度開く」を選択します。JIS)」を選択します。すると文字化けがなくなりShift_JISで表示されます。これをUTF-8に変換して保存したい場合は、再度、画面下に表示しているエンコードタイプをクリックして以下のメニューを表示します。今度はここで「エンコード付きで保存」を選択します。表示されたメニューの「UTF-8」を選択します。するとShift_JISで表示されていたファイルの中身がUTF-8に変換されてこのまま保存するとUTF-8で保存できます。Windowsのメモ帳を使って変換メモ帳はファイルを保存する際にエンコードタイプを設定できます。メモ帳でテキストファイルを開き、名前を変えて保存します。するとファイル名を入力する画面下に「文字コード(E):」項目があるので、ここでUTF-8を選択して保存します。メモ帳はこれで完了です。Macのテキストエディタを使って変換MacのテキストエディタはWindowsのメモ帳と似ていますが少し保存方法が異なります。名前を変えて保存が直接できないので、一旦ファイルの複製(コピー)をテキストエディタで実行します。(UTF-8)を選択して保存します。Macのテキストエディタはこれで完了です。コマンドラインツールを使って変換ターミナルやコマンドシェルを使ってコマンドで指定のファイルのエンコードを変換します。コマンドを使って変換するときの利点は、複数のファイルをまとめて一気に変換することです。コマンドは「nkf」を使います。nkfが対応しているエンコードタイプは以下です。UTF-16):BOMあり/なしnkfインストールLinuxでnkfをインストールするにはパッケージインストールします。nkfMacでインストールする場合はHomebrewを使ってインストールします。nkfWindowsの場合は「nkf.exe」をダウンロードして使います。Windows用(Vector)Windows10でWSLを有効にしている場合は、導入しているLinuxに合わせた方法でインストール可能です。sample.txtUTF-8指定したファイルのエンコードタイプを自動判別した結果が表示されます。sample-sjis.txt指定したファイルをShift_JISに変換し、sample-sjis.txtへ出力しています。sample-sjis.txtShift_JISエンコードタイプを確認するとShift_JISとなっています。sample.txt指定したファイルをShift_JISに変換しファイルを上書きします。sample.txtエンコードタイプを確認するとShift_JISとなっています。フォルダ配下をサブフォルダもまとめて処理したいときは以下のようにします。yShift_JIS-okオプションで確認しながら実行できますが、一気に処理したい場合は-execオプションで実行します。\;Shift_JISShift_JISなので、一気にまとめて変換してファイルを上書きしたい場合は以下となります。\;」の部分ですが、\の前はスペースは忘れずに入れてください。上記のオプション以外にも半角カナ文字を全角カナに変換するものや、ひらがなで出力、カタカナで出力もできるのでコマンドのmanページで確認してみてください。CodeAidについて。