文字コード変換

  • ネットワーク用漢字コード変換フィルタ (Network Kanji Filter)

nkf

  • nkfマニュアル https://sourceforge.jp/projects/nkf/document/nkf-man-2_0_6-ja
  • 例:EUCファイルeuc.txtをutf-8ファイルutf8.txtに変換
    % nkf -w euc.txt > utf8.txt
    または,
    % nkf -w -Lu --overwrite test.txt
  • 例:テキストファイルtext.txtの文字コードを調べる
    % nkf --guess test.txt
オプション操作
--guess自動判別の結果を出力する
--helpヘルプを表示する
-jJISコードを出力する。(デフォルト)
-eEUCコードを出力する。
-sシフトJISコードを出力する。
-w -w8[0] -w16[BL][0]Unicode を出力する。
-w -w80UTF8コードを出力する。(BOM無し)
-w8UTF8コードを出力する。
-w16 -w16B0UTF16コードを出力する。(Big Endian / BOM無し)
-w16BUTF16コ ードを出力する。(Big Endian / BOM有り)
-w16LUTF16コードを出力す る。 (Little Endian /BOM有り)
-w16L0UTF16コ ー ド を 出力する。(Little Endian /BOM無し)
-J -E -S -X -B期待される入力コードの性質を指定する。
-JISO-2022-JPを仮定する。
-E日本語EUC(AT&T)を仮定する。
-SMS漢字を仮定する。X0201仮名も仮定される。
-WUTF-8を仮定する。
-W8UTF-8を仮定する。
-W16UTF-16(Little Endien)を仮定する。
-W16BUTF-16(Big Endien)を仮定する。
-W16LUTF-16(Little Endien)を仮定する。
-XMS漢字中にX0201仮名があると仮定する。
-B壊れた(Broken)JISコード。ESCがなくなったと仮定する。
-B1ESC-(, ESC-$ のあとのコードを問わない
-B2改行のあとに強制的にASCIIの戻す
-f?一行?文字になるように簡単な整形をおこなう。デフォルトは 60文字である。
-ZX0208中の英数字と若干の記号をASCIIに変換 す る。-Z1はX0208間 隔をASCII spaceに変換する。-Z2はX0208間隔をASCII space 二つに変換する。趣味によって使い分 けてほしい。
-bバッファリング出力を行う。(デフォルト)
-u出 力 時 に、バッファリングしない。 "ssh localhost|nkf -u" というように使う。
-t何もしない。
-Iiso-2022-jp以外の漢字コードを〓に変換。
-i?JIS漢字を指示するシーケンスとして ESC-'$'-?を使用する。 (デフォルトは、ESC-'$'-'B')
-o?1バ イ ト 英 数 文 字セットを指示するシーケンスとして、ESC-'('-?を 使 用 す る。 (デ フォ ル トは、ESC-'('-'B')
-rROT13/47の変換をする。
-g自動判別の結果を出力します。
-vバージョンを表示する。
-Tテ キ ストモードで出力する。(MS-DOS上でのみ効力を持つ)
-l0x80-0xfeのコードをISO-8859-1 (Latin-1)として扱う。JISコードアウトプットとの組合せみのみ有効。 -s, -e,-xとは両立しない。
-x通常おこなわれるX0201仮名->X0208の仮名変換をしな いで、 X0201仮 名 を 保 存する。入力は、MS-Kanjiの1byte仮名、SO/SI、 ESC-(-I, SSOを受け付ける。出力は、日 本語EUC中ではSSO、 JISでは ESC-'('-I を使う。
-Oファ イ ル に 出 力 す る。Unixで は 不 要 な機能だがWindowsやMSDOSでは必要らしい。直後の引き 数 で なく、 最後のファイル名が出力ファイル名となり上書きされてしまうので注意。ファイル 名 が な い 場 合 は、nkf.out。
-cNL前にCRを付加する。
-dNL前 のCRを 削 除する。単独のCRは、NLに置き換えられる。
-L[wmu]改行モード.デフォルトは変換なし。
-Luunix (LF)
-Lwwindows (CRLF)
-Lmmac (CR)
-- 長い名前のオプション。
--ic=<input_codeset> --oc=<output_codeset>入力・出力の漢字コード系を指定します。
ISO-2022-JPJISコード。-jまたは-Jと同じ。
EUC-JP EUCコード。-eまたは-Eと同じ。
eucJP-asciiオープングループ日本ベンダ協議会が定義したeucJP-ascii。 -xが暗黙のうちに指定される。
eucJP-msオープングループ日本ベンダ協議会が定義 したeuc-JPms。 -xが暗黙のうちに指定される。
CP51932Micorosft Code Page 51932。-xが暗黙のうちに指定される。
Shift_JISシフトJIS。-sまたは-Sと同じ。
CP932Micorosft Code Page 932。-xが暗黙のうちに指定される。
UTF-8 UTF-8NBOM無しのUTF-8。-wまたは-Wと同じ。
UTF-8-BOMBOM付きのUTF-8。-w8または-Wと同じ。
UTF8-MACUTF8-MAC。互換分解されたひらがな・カ タカナ等を結合します。
UTF-16 UTF-16BE-BOMBOM 有 り で Big Endian の UTF-16。-w16Bまたは-W16Bと同じ。
UTF-16BEBOM 無しで Big Endian の UTF-16。-w16B0または-W16Bと同じ。
UTF-16LE-BOMBOM 有りで Little Endian の UTF-16。-w16Lまたは-W16Lと同じ。
UTF-16LEBOM 無しで Little Endian の UTF-16。 -w16L0または-W16Lと同じ。
--fj,--unix,--mac,--msdos, --windowsこれらのシステムに適した変換をします。
--jis,--euc,--sjis,--mime,--base64対応する変換をします。
--hirakana, --katakana平仮名、片仮名変換
--fb-{skip, html, xml, perl, java, subchar}Unicode から Shift_JIS, EUC-JP, ISO-2022-JPに変換する際に、変換できなかった文字をどう扱うかを指定できます。
--prefix=escape character target character..EUC-JP から Shift_JIS への変換の際、2 バイト目に現れた文字の前にエスケープ文字をつけること ができます。引数の 1 文字目がエスケープ文字、2文字目以降にエスケープされるべき文字 を指定します。例えば、--prefix= とすると、Shift_JIS の 2 文字目に$, @ が来たら、その前に が挿 入 さ れ ま す.--prefix=@@ とすると、Shift_JIS の 2 文字目に @ が来たら、その前に @ が挿入されます
--no-cp932extCP932において拡張された、 NEC特殊文字、NEC選定IBM拡張文字(89〜92区)、IBM拡張文字を変換しません。
--no-best-fit-charsUnicode からの変換の際に、往復安全性が確保され ない文字の変換を行いません。 Unicode からUnicode の変換の際に -x と共に指定す る と、nkf を UTF 形式の変換に用いることができます。(逆に言えば、これを指定しないと一部の文字が保存されません)パスに関わる文字列を変換する際には、このオプションを指定することを強く推奨します。
--cap-input, --url-inputそれぞれ ':', '%' に続く 16 進数を文字に変換する
--numchar-input&#....; のような、Unicode文字参照を変換する
--in-place[=SUFFIX] --overwrite[=SUFFIX]元 の ファイルを変換結果で置き換える。複数のファイルを書き換えることも可能。元のファイルの タ イムスタンプとパーミッションが保持される。現在、作成日時やinodeは変更されるが、 将来にわたってこの実装のままである保証は無い。

lv

テキストヴューアーlvでも変換ができます.

  • 例:EUCファイルeuc.txtをutf-8ファイルutf8.txtに変換
    % lv -Ou8 euc.txt > utf8.txt

指定できる主な文字コード:

オプション文字コード
jiso-2022-jp
eExtended Unix Code
ejeuc-jp
u7UTF-7
u8UTF-8
i1・・・i9iso-8859-1・・・iso-8859-9
sshift-jis

Webのエンコード

UTF-8の場合:

<META http-equiv="Content-Type" content="text/html; charset=utf-8">

シフト JISの場合:

<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> 

EUCの場合:

<META http-equiv="Content-Type" content="text/html; charset=EUC-JP"> 

JISの場合:

<META http-equiv="Content-Type" content="text/html; charset=ISO-2022-JP">

KojiYamada


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-11-16 (月) 12:25:53 (1407d)