文字化けについての質問
こんにちは、kmakotoです。
現在日本語の文字化けに悩まされています。
いろいろなサイトで情報を見たのですが、
該当するようなものがありませんでした。
皆さんの力をお借りしたく投稿しました。
環境は、
サーバ:Windows2000(SJIS、DB:oracle 8.1.6(SJIS) で
weblogic7.0 を使って、Servlet,JSP,EJB の開発をしています。
文字化けの内容はDBで検索した結果を
response.getWriterで
printをつかってCSV形式にして、それをダウンロードしようとしているのですが、
エディタもしくはExcelで開いたとき日本語が化けて表示されてしまいます。
SJIS、MS932が…とかの説明がweb上にあるので、試行錯誤してみました。
しかし日本語は化けて表示されてしまいます。
試したことは
1.Javacのコンパイルオプションに -encodingにSJISまたはMS932を指定してコンパイル
2.1:response.setContentType("application/octet-stream");
2:response.setHeader("Content-Disposition", "attachment;filename=\"" +
new String(downLoadFileName.getBytes("MS932"), "8859_1") + "\"");
文字コードの指定の部分にMS932やSJISを設定
上記のことを試したのですがCSVファイルが文字化けしてしまいます。
2.1:の部分をresponse.setContentType("text/html");するとブラウザ上に表示されるのですが
このときだけはちゃんと日本語で表示してくれます。
お礼
早々にありがとうございます。説明不足の所もあり申し訳ございません。 少し補足いたします。 (1)出来たCSVファイルをメモ帳で開く事が前提です。 (2)メモ帳で開いた時「?」と表示されたらNGです。 内容に「?」表示があるか調査したいのです。 「?」だけでなく「・」もあるようです・・・・・