web-dev-qa-db-ja.com

Java)での文字エンコードの自動検出

かなりヒットした問題のようですが、私はまだ解決策を見つけることができていません。おそらくそれが入ってくるからです多くのフレーバー。ここにあります。いくつかのコンマ区切りファイルを読み取ろうとしています(区切り文字はコンマよりも少し一意である場合がありますが、今のところはコンマで十分です)。

ファイルは業界全体で標準化されることになっていますが、最近、さまざまな種類の文字セットファイルが登場しています。これを補うためにBufferedReaderを設定できるようにしたいと思います。

これを行い、成功したかどうかを検出するためのかなり標準的な方法は何ですか?

このアプローチについての私の最初の考えは、例外なくファイルを読み取れるようになるまで、単純->複雑な文字セットをループすることです。しかし、正確には理想的ではありません...

ご清聴ありがとうございました。

18
Kirk

Mozillaのuniversalchardetは、そこにある効率的な検出器であると考えられています。 juniversalchardet はJavaポートです。もう1つのポートがあります。詳細についてはこれを読んでくださいSO 文字エンコーディング検出アルゴリズム

11