アプリ版:「スタンプのみでお礼する」機能のリリースについて

MySQLに接続し、Blob型の日本語データを取得したのですが、
文字化けしてしまいます。
new Stringを使っているのですが、うまくいきません。

今は以下のような流れになっております。
まずstr_orgにデータを格納して、次にnew Stringで変換してstr_chgに格納しております。
しかしstr_chgの文字列が文字化けしてしまいます。

何が原因か分かりますでしょうか?
ちなみに現在は、my.confで[default-character-set=]の設定はは行なっておりません。


String url = "jdbc:mysql:///DATABASE?useUnicode=true";
String usr = args[0];
String pwd = args[1];
Srting key = args[2];
Connection con = DriverManager.getConnection(url,usr,pwd);
PreparedStatement pstmt;

pstmt = con.prepareStatement("SELECT * from quote_hdr WHERE qh_id = ?");
pstmt.setString(1,key);
rs = pstmt.executeQuery();

String str_org = rs.getString("qh_cmts");
String str_chg = new String(qh_cmts.getBytes("8859_1"));

A 回答 (1件)

即席のお答えで自信はありませんが、


String url = "jdbc:mysql:///DATABASE?useUnicode=true&chracterEncoding=Shift_JIS";等と
String url にcharacterEncodingを追加しないと環境によっては文字化けする事があるようです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!