web-dev-qa-db-ja.com

Rubyで出力ファイルのエンコーディングを指定するにはどうすればよいですか?

File#openを使用するときにファイルのエンコーディングを設定するにはどうすればよいですか?

34
Fluffy

UTF-16LEエンコーディングでファイルを出力する例を次に示します。

open("data.txt", "w:UTF-16LE")

Rubyは、記述している文字列のエンコーディングを調べ、必要に応じてトランスコードします。これは非常に詳細な ブログ投稿 優れた例でメカニズムを説明しています(「デフォルトの外部および内部エンコーディング」というセクションを参照してください)。

56
ire_and_curses

そのブログには、Rubyを使用した文字エンコードに関する たくさんのすばらしい情報 があります。これには Ruby1.8を使用したエンコードに関する投稿が含まれます

日本語のShiftJISエンコーディングを使用してページを読み取る方法は次のとおりです。

  file = open(url, "r:Shift_JIS")
1
nevan king