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

非常にマイナーな言語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です。

何かアドバイスが頂ければ幸いです。

A 回答 (1件)

とりあえず思いついた方法ですが、



1.データベースから取得時にShift_JISで取得するようにする
ODBC接続をJDBC接続にするとか・・・

2.CSVファイルの文字コードをUTF-8にする
仕様的に問題がありそうですが・・・

3.文字化けする文字を特定して、文字化けしないコードに置き換える
文字を特定して、Replaceで置き換え・・・面倒ですが

参考URL:http://www.adobe.com/jp/support/coldfusion/ts/do …
    • good
    • 0

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