skillup

技術ブログ

Java

Javaでの文字コード判定、変換

投稿日:

Javaにて文字コード判定の処理を書きます。

通常の文字コードの判定、変換

まだ処理が追いついてないです(爆)

ちょっとリンクだけ張っておきます。

http://blog.enjoyxstudy.com/entry/20051214/p1

http://qiita.com/pcpDev/items/0c83712e93f8f972f208

http://qiita.com/SAM_tak/items/c64108d472da257dd93a

http://d.hatena.ne.jp/cero-t/20100204/1265302329

ファイルの文字コード判定、変換

ファイルの文字コード変換はInputStreamReaderの引数に読み込ませればよいのですが、問題なのはどの文字コードかわからない場合です。

この場合、文字コード判定をし、変換自体はInputStreamReaderで行います。

それではファイルの文字コードの判定を行うライブラリを紹介します。

juniversalchardet

URL http://java.akjava.com/library/juniversalchardet

ダウンロード

いつも通りmavenで行います。

下記をpomに記述します。

文字コード変換処理

文字コードは下記の処理で変換を行います。

下記のresultが文字コードになります。

注意事項

文字コードを判定するだけなら上記でよいのですが、文字コードの判定と同じInputStreamReaderを使うと文字自体が読めなくなります。

文字コード判定と実際にデータを読み込むストリームは分けるようにしましょう。

 参考リンク集

http://typea.info/tips/wiki.cgi?page=Java+%A5%D5%A5%A1%A5%A4%A5%EB%A4%CE%CA%B8%BB%FA%A5%B3%A1%BC%A5%C9%A4%F2%C8%BD%CA%CC%A4%B9%A4%EB

 

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

リファクタリング

業務で大幅なリファクタリングをする機会があり、その際の注意だったり、気をつけるべきことなどをまとめておきます。 自分用なので自分にしかわからない言葉で書いてある可能性が大きいです。 気になる方は問い合 …

no image

Map,KeySetでのSteam

日常で一番よく使うMapループ系処理について Map KeySetのStreamでの書き方 Map<String,String>でEntrySetではなく、KeySetで展開したいときなど …

no image

Mapからインスタンス変数、インスタンス変数からMapへ

Javaで変数を引き回すときにMapからインスタンス、インスタンスからMap、あるインスタンスから別のインスタンスに変数を差し替える作業って結構多いと思います。 これって普通にやるとMapのget,p …

no image

JavaEEのトランザクションに関して

最近あまり触れていないJavaEEのトランザクションについて。 JavaEEの場合、EJB環境では@Statelessを付けることによりトランザクション管理を行うことができます。 [crayon-5d …

no image

JSFのテンプレート機能

Contents1 保守性の向上で必要なHTMLの考え方1.1 サンプル1.2 ファイル構成1.3 ソース1.3.1 静的なファイル群1.3.2 テンプレート1.3.3 アクセスファイル1.4 Net …