• 締切済み

JDBCで日本語を扱うと文字化けする

日本語対応していないJDBCドライバを使って、 検索を行ったりすると、文字化けしてかえってくるのですが、登録の際も文字化けしてしまします。 なにかいい対策はないでしょうか?

  • Java
  • 回答数1
  • ありがとう数1

みんなの回答

回答No.1

String str = new String(str.getBytes("ISO-8859-1"),"JISAutoDetect"); のように文字コードの変換などは行っていますか?

関連するQ&A

  • 日本語対応JDBCドライバ

    MySQLの日本語対応JDBCドライバは存在するのでしょうか? もし存在するのであれば、参照URLを教えてください。

  • jdbcで取り出すと文字化けする

    JDBCでアクセスすると日本語が文字化けします。 たとえばこのページhttp://park3.wakwak.com/~minen/db_cobjava/sql_kiso/1_1.htm と同じようにやってみますと、 日本語のところが文字化けしてしまいます。 )!)!)!のようになります。 実はある書籍のやり方もほとんど同じで、 ちょっとちがうのが、 getStringの部分で、 String(rs.getString("emp_name").getByte("EUC_JP"),("iso-2022-jp")) のようにしていましたが・・・ これでも同じように文字化けします。 何かが間違っているのかと、いろいろさまよった挙句、こちらのページ http://www.hellohiro.com/jdbcpostgresql.htm ではcreatedbコマンドのときに createdb -E EUC_JP hellodb のようにやっており、この方法であれば文字化けせずに表示することが出来ました。 上の文字化けするときも、psqlでログインしてselect文を実行したときには文字化けしません。JDBCでアクセスして取り出したときに文字化けします。 ローカルでもネット経由でも同じです。 オプションを指定せずにデータベースを作ったときに”SQL_ASCII”というエンコーディングになり、それが原因かとも思ったのですが、 はじめに書いたページや書籍のやり方ではそれで平然と日本語表示されていますし、自分が何かが間違っているのかとも思います。 お気づきの点がありましたら、ご指摘お願いいたします。

  • JDBCからの登録で文字化けしてしまいます

    サブクエリーを使うためにMYSQL4.0をアンインストールして MYSQL4.1.22をインストールしなおしました。 JDBCにて Class.forName ("com.mysql.jdbc.Driver"); String strConn="jdbc:mysql://localhost/sikaku" +"user=root&password=root" +"&useUnicode=true&characterEncoding=Shift_JIS"; として、inserでデータを登録したところ英数字は正しく登録できたのですが、 日本語(漢字、ひらがな)の部分が文字化けしてしまいました。 MYSQL4.0のときは日本語も正しく登録できていました。 また、コマンドプロンプトからMYSQLを起動し、データを登録するときは、 日本語も正しく登録できています。 現在の設定は mysql> status -------------- mysql Ver 14.7 Distrib 4.1.22, for Win32 (ia32) Connection id: 110 Current database: sikaku Current user: root@localhost SSL: Not in use Using delimiter: ; Server version: 4.1.22-community-nt Protocol version: 10 Connection: localhost via TCP/IP Server characterset: sjis Db characterset: sjis Client characterset: sjis Conn. characterset: sjis TCP port: 3306 Uptime: 7 hours 56 min 1 sec -------------- となっていて、文字コード関係の変数の値は mysql> show variables like "char%"; +--------------------------+-----------------------------+ | Variable_name | Value | +--------------------------+-----------------------------+ | character_set_client | sjis | | character_set_connection | sjis | | character_set_database | sjis | | character_set_results | sjis | | character_set_server | sjis | | character_set_system | utf8 | | character_sets_dir | C:\MySQL\share\charsets/ | +--------------------------+-----------------------------+ のようになっています。 ぜひとも対策方法をご教授お願いいたします。

  • 日本語文書の文字化けについて

    英語版OSのサーバーに数台のネットワークプリンタをインストールしています。その中で、外国で購入したHP製プリンタで日本語文書を印刷すると、度々文字化けや文字抜けがあります。サーバーにインストールしてあるプリンタドライバーは英語版ですが、文字化けはそれが原因でしょうか。つまり、日本語版のプリンタドライバーをインストールすれば、日本語文書の文字化けはなくなるのでしょうか。 ちなみに、同じ文書を日本製のプリンタで印刷すると文字化けは起こりません。 初歩的な質問で恐縮ですが、宜しくご回答ください。

  • 文字化けの日本語化

    はじめまして。   最近 海外製(アメリカで)のパソコンを買ったのですが日本のソフト(ゲームなど)を開く際に文字化けしてしまいます(設定画面などで  ????などよくわからない文字が表記されてしまいます。) これらの文字化けを日本語化にしたいのですがどのようにすればよろしいでしょうか? なにかインストールソフトがひつようなのでしょうか? 返答よろしくお願いします。

  • 日本語文字コードを使わずにブラウザ上の日本語文字を検索するには

    日本語文字コードを扱えないマクロのソフト(AutoHotKey)で ブラウザ上の日本語文字列を検索するのに苦労しています。 例えば、ブラウザ上で「弁護士」という文字列を検索しようと思っても マクロの方は「..OEi`Z(m」を検索窓に入力して探してしまうのです。 日本語文字に対応する何らかの文字コードを入れるなどして解決する方法はございますか。 検索やマクロの代替手段は求めておりません。 あくまで文字コードの問題の処理法に限定しての質問です。

  • OUTLOOKの日本語文字化け

    OUTLOOKを使用している際に日本語が文字化けします。 WINDOWSの日本語バージョンを海外で使用しています。 タイトルのみ化けることが多いのですが、対処方法を教えていただけますでしょうか?

  • 日本語の文字化け

    APACHE、MYSQL、PHPである本をもとに住所録を作りました。ブラウザには問題なく登録した氏名、住所などが表示されましたが、ターミナルでselect * form テーブル名を実行してみると、日本語が文字化けしています。同様にPHPmyadminのほうでも日本語が文字化けしています。ブラウザにはきちんと表示されるので、この本を読みすすめていく分には問題ないのですが、今後絶対に困ると思われますので、今のうちに直したいです。原因と修正方法を教えて下さい。 apache 1.3.3 MYSQL 4.0.27 PHP 4.4.1 MAC OS X 10.4.8 よろしくお願いします。

  • 日本語が打てません 文字化けします

    日本のAmeba Piggの海外版、Ameba Picoをはじめたのですが 日本語が打てません 文字化けします どうすれば日本語が打てるようになりますか Windows Vistaです

  • 日本語が文字化けします・・・○| ̄|_

    以下のページで質問をしようとしたのですが・・・ ↓↓↓ http://128.121.62.21/opinion/form.html フォームに日本語を書き込むと、ロシア文字?や記号に文字化けしてしまいます。直し方を教えてください。 ◆環境はMac OSX、IE5.2です。 ◆フォームに書き込んだ日本語と、職業を選ぶ所が文字化けしています。他の部分の文字は普通です。 よろしくおねがいします。

専門家に質問してみよう