0

次の文字を含むテキストファイルをб U+0431保存するが、ANSIコードページファイルとして保存する場合。

Rubyはを返しますord = 63。コードページが返すようにUTF-8でファイルを保存するord = 208, 177

特定のコードページでエンコードされた入力を処理するようにRubyに具体的に指示する必要がありますか?もしそうなら、どのようにこれを行いますか?

4

1 に答える 1

5

それは ruby​​ のソースコードにありますか、それとも で読み込むファイルにありますFile.openか? Ruby のソース コードにある場合は、(Ruby 1.9 で) これをファイルの先頭に追加できます。

# encoding: utf-8

または、他のほとんどのエンコーディング (iso-8859-1 など) を指定することもできます。

でファイルを読み込んでいる場合、次のFile.openようなことができます。

File.open("file.txt", "r:utf-8") {|f| ... }

エンコーディング コメントと同様に、ここでもさまざまな種類のエンコーディングを渡すことができます。

于 2009-12-14T18:46:31.763 に答える