文字コードの変換

Date : 06-03-25
Author : Defolos

CONTENTS

(1.) 文字コードの変換
- 日本語文字コード
- nkf:文字コードの変換
- 改行コード

文字コードの変換

● 日本語文字コード

 日本語の文字コードには、いくつかの種類がありますが、多く使われているのは次の3つです。

 Windowsで日本語の文章を書いた場合、標準では文字コードがShiftJIS(SJIS)になっています。しかし、UNIXやLinuxでは標準ではEUCを使っており、メールではJISを使います。このように日本語の文字コードは使われる環境によって標準が異なっています。
 UNIXで作った日本語文書をWindowsに転送してメモ帳で開いてみると、文字化けして読めないといったような経験がある方もいらっしゃると思います。このような問題を解決するために、UNIX/Linuxにはnkfという文字コードを変換するツールが付属しています。

● nkf:文字コードの変換

 nkfは次のように使います。

$ nkf [-e][-j][-s] file-name

 オプションは次の通りです。

 nkfはファイルの文字コードを変換してモニターに出力するので、次のようにリダイレクトしてファイルに出力するようにします。

$ nkf -s test.txt > test_conv.txt

 これで、test.txtの内容がSJISに変換されて、test_conv.txtに書き込まれます。注意点は、変換したいファイルと同じ名前のファイルを出力先ファイル名にしないようにしてください。これをやるとファイルの中身が消えてしまいます。

● 改行コード

 文字コードと同様に、改行コードもOSによって異なっています。メジャーなOSと改行コードの関係は次のようになっています。

» UNIX系
LF(LineFeed, NweLine)
» Mac系
CR(CarriageReturn, Return)
» Windows系
CR + LF

 上記のように、Windowsでは改行コードにLFとCRの2つを使用しており、UNIXではLFのみを使用しています。改行コードの変換もオプションを選択することで、nkfで行うことができます。

 例として、Windowsで作られたtest.txtをUNIXで使えるようにするには、次のようにします。

$ nkf -e -Lu test.txt > test_conv.txt

■参考文献


go back to the TOP page of Glazheim Lykeion.