- 締切済み
COLDFUSIONの文字化け
非常にマイナーな言語COLDFUSIONで困っています。 このサイトでも既出の問題なのですが、 全角の「-」などの文字をDBから取得して表示するときに「?」に文字化けしてしまう現象が起きます。 ネットの情報を元にして、 <cfprocessingdirective pageencoding="UTF-8"> を付けくわえてみたのですが、化けます。 結果をCSVでダウンロードするために、 <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta http-equiv="Content-Disposition" content="attachment; filename="sample.xls""> と記述していますが、これが問題になるのでしょうか? <meta http-equiv="Content-Type" content="text/html; charset=shift_jis">の部分をUTF-8にしてみましたが、だめです。 結果を表示するときに、 <cfloop query="GetData"> <cfset #body#=replace(#body#, "#chr(inputbasen("ff0d",16))#", "#chr(inputbasen("2212",16))#", "all")> <tr><td class=this>#body#</td></tr> </cfloop> などとしてみましたが、これでもNGです。 使用しているDBはAS400のDB2で、 COLDFUSIONは、7.0.2です。 何かアドバイスが頂ければ幸いです。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Yohjira
- ベストアンサー率66% (14/21)
とりあえず思いついた方法ですが、 1.データベースから取得時にShift_JISで取得するようにする ODBC接続をJDBC接続にするとか・・・ 2.CSVファイルの文字コードをUTF-8にする 仕様的に問題がありそうですが・・・ 3.文字化けする文字を特定して、文字化けしないコードに置き換える 文字を特定して、Replaceで置き換え・・・面倒ですが