本稿では、Java 言語において「byte配列」と「16進数文字列」を相互に変換する方法について解説します。 方法を知ろう byte配列と16進数文字列とを変換する方法はいくつかあります。 Apache Commons Codec の Hex クラスを利用する DatatypeConverter クラスを利用する 筆者が最も利用するのは Apache Commons Codec の Hex クラスを利用する方法です。 逆に2015年ともなった今、最も参考にしない方が良い方法は、変換クラスの自作です。 インターネットで検索すると自作クラス(メソッド)を作成する方法が多く検索結果に現れますが、どれも古い記事で、上記のようなライブラリやクラスがある今では労力の無駄だと考えます。 Apache Commons Codec の Hex クラスを利用する Apache Commons Codec は言
JavaでJDBCを使ってMySQLを利用する際、INSERTでデータを追加したら登録したデータが文字化けしていました… データベースは CHARACTER SET utf8 COLLATE utf8 として作成し、Java 内でも UTF-8 を使用しているので、文字化けが発生する原因が分かりませんでした。しかも、MySQLモニタ等であらかじめ登録してあるデータを読み出す際には文字化けが発生しません。 Java ➡ MySQL の時だけおかしくなるようです。 ということで、調べてみましたが、JDBCでコネクションを取得する際に、文字コードを指定する方法があるようなので、試してみました。具体的には以下のようにします。 Class.forName("com.mysql.jdbc.Driver").newInstance(); Connection con = DriverManager.ge
前回のエントリーでは「Java関係ないやん」的なツッコミも受けましたが、 今回からは、Javaを前提にしていきます。 Javaで文字から文字コードを作る 新人くん「Javaで文字から文字コードを作りたいんですが、どうすれば良いんですか?」 先輩社員「getBytesすれば一発だね」 新人くん「getBytesした後のバイト配列から上手く文字列を作れないんですが・・・」 先輩社員「それは別の話だね」 前回のエントリーでは、WordやIMEを利用した文字と文字コードの変換方法を説明しましたが、 では、Javaではどうやれば良いのでしょうか。 Javaで文字から文字コードを作るには、 先輩社員も言っている通り、String#getBytes(charset)するだけです。 具体的なコードは、以下のようになります。 String str = "あいうえお"; byte[] utf8 = str.g
String eucjpStr = new String("変換したい文字列".getBytes("EUC_JP"), "EUC_JP"); この例の場合ECU-JPに変換します。変換したい文字列の文字コードは、UTF-8でもShift_JISでも何でも良いです。 たったこれだけの事なんだけど、検索しても全然これだけの事が見つからなくて、無駄に時間費やしちゃって、カッとなって書いた。 愚痴 指定された 文字セット を使用してこの String をバイトシーケンスに符号化し、結果を新規バイト配列に格納します。 http://java.sun.com/javase/ja/6/docs/ja/api/java/lang/String.html#getBytes(java.nio.charset.Charset) 指定された 文字セット を使用して、指定されたバイト配列を復号化することによって、新
きときと - Java - 文字コード変換 Javaでは、文字列は内部UnicodeのStringオブジェクトですが、Byte→String変換が正しく行われなかったときなど、 明示的な変換を必要とする場合があります。 Tomcat3.2.xなど、日本語に対応していないServletコンテナを利用する場合などによく使われます。 実際の変換には、 String unicodeStirng = new String(shift_jis_string.getBytes("iso-8859-1"), "Shift_JIS"); のようなコーディングがよく参考として挙げられます。 しかし、 一見何の意味もない"iso-8859-1"などの文字が出てくる。 Javaにおける文字コード変換の詳細を知らなければ分かりにくい。 変換文字列が複数ある場合の記述が冗長である。 など、不都合が多く、これを定型コー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く