• 締切済み

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です。 何かアドバイスが頂ければ幸いです。

みんなの回答

  • Yohjira
  • ベストアンサー率66% (14/21)
回答No.1

とりあえず思いついた方法ですが、 1.データベースから取得時にShift_JISで取得するようにする ODBC接続をJDBC接続にするとか・・・ 2.CSVファイルの文字コードをUTF-8にする 仕様的に問題がありそうですが・・・ 3.文字化けする文字を特定して、文字化けしないコードに置き換える 文字を特定して、Replaceで置き換え・・・面倒ですが

参考URL:
http://www.adobe.com/jp/support/coldfusion/ts/documents/jp_char_corruption.htm

関連するQ&A

  • 表示すると文字化けします

    下記のファイルが表示されると文字化けしてエンコードを修正しないとみれませんなぜでしょうか? 日本語EUCになってしまします。 <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE></TITLE> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> </HEAD> <BODY> <TABLE border="1"> <TBODY> <TR> <TD bgcolor="#ffff00" width="699"><B><FONT size="+2">登録ありがとうございました</FONT></B></TD> </TR> <TR> <TD height="99" width="699"><B>■<A href="http*************************">使いこなすために</A>手順に沿って進んでください</B>→<A href="http**************************">次へ進む</A></TD> </TR> </TBODY> </TABLE> </BODY> </HTML>

    • ベストアンサー
    • HTML
  • 文字コード

    HPを作る際は <meta http-equiv="content-type" content="text/html;charset=shift_jis"> と <meta http-equiv="content-type" content="text/html;charset=utf-8"> のどちらにすればいいのでしょうか?

    • ベストアンサー
    • HTML
  • 文字化けを解決したい

    サイトを持つ管理人です。タグなどについてはかなり初心者です。 iPhoneなどの海外OSから閲覧すると文字化けしてしまうという報告を受けて、タグを色々いじっています。 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">を追加してみたのですが、これ単品だと私のPCから閲覧したときに文字化けしてしまいました。 そのため<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">と<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">を並べてみたのですが、これで海外OSからも文字化けを起こさなくなったのでしょうか? こんな感じのタグです↓ <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <META NAME="GOOGLEBOT" CONTENT="NOINDEX, NOFOLLOW,NOARCHIVE"> <META NAME="ROBOTS" CONTENT="NOARCHIVE,NOINDEX,NOFOLLOW"> <meta name="viewport" content="width=380, maximum-scale=1.6" /> <title>練習</title> </head> 全てのスマホからもサイトを閲覧出来るようにするにはどうしたら良いでしょうか?それとも、全てのスマホから文字化けを防ぐことは不可能なのでしょうか? お知恵をお貸しください。

  • ホームページの文字コードについて質問です

    現在、他の方から受け継いだホームページを管理しているのですが、最初の部分が <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta http-equiv="content-style-type" content="text/css; charset=Shift_JIS"> <link href="common/top.css" rel="stylesheet" type="text/css"> となっていました。 これ自体は気にならないのですが、外部から読み込んでいるtop.cssを見てみると 1行目に「@charset "utf-8";」と入っていました。 文字コードがhtml側ではcharset=shift_jis"、css側ではcharset "utf-8";となっています。 私はどちらかに揃えるべきだとばかり思っていたのですが、別々でも問題ないものなのでしょうか? また、もしどちらかに揃えるべきであれば、shift_jisとutf-8のどちらに揃えるべきでしょうか? 詳しい方がいらっしゃいましたら、どうぞよろしくお願いします。

    • ベストアンサー
    • HTML
  • Dreamweaverでソースが文字化けしてしまいました。

    Dreamweaverでソースが文字化けしてしまいました。 メタタグが <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> になってたので、 <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> に修正して、保存して終了したあとに、再度Dreamweaverで開いたところ、ソースが全部文字化けしてしまいました。 元に戻そうと、メタタグをもとのutf-8に戻しても直りません。 メタタグをShift_JISにして、ページプロパティのエンコーディングをShift_JISに合わせると、ソース全部が文字化けしていた状態は直ったんですが、ところどころ文字化け状態のままになっています。 完全にもとの状態に戻したいのですが、どうしたら文字化けが直るのでしょうか。 教えてください。 よろしくお願いします。

  • 文字化け

    HPを少しずつ作っているのですが、少しだけできたのでyahooのところにアップしてみました。しかし文字化けしてしまいました(涙) <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=Shift_JIS"> このタグが関係あるのでしょうか? IE6

  • HTMLの文字化け

    自分で立ち上げたサーバへWindoswで作成したHTMLをアップしてブラウザから表示の確認をしてみたところ、日本語が文字化けてしまいました。 ヘッダーには <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> として、文字コードをUTF-8にしてあるのですが、この部分を <meta http-equiv="Content-Type" content="text/html; charset=Shift-JIS" /> とShift-JISにしてみると、日本語の文字化けが解消します。 できればcharset=UTF-8の状態で文字化けせずに表示してくれるようにしたいのですが・・・ どなたか原因がお分かりになる方いらっしゃいましたら、ご教授のほどお願い致します。 テキストエディタはK2Editorを使用しており、「保存時の文字コードと改行種類の変更」でHTMLファイル自体の文字コードは「Shift-JIS」、改行コードは「CRLF」としております。 サーバは、CentOS5.4を使用しており、 コマンドで # printenv | grep LANG の結果は、 LANG=ja_JP.UTF-8 となっております。

    • ベストアンサー
    • HTML
  • ビルダーでの文字化け。

    ホームページビルダー6.5でHP作成中です。以前はFrontPageで作っていて、それをビルダーで色や文字などをちょっと変えて保存してアップしました。そしたら文字化けするようになってしまいました。 <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 6.5.0.0 for Windows"> <META http-equiv="Content-Style-Type" content="text/css"> ここが何か間違った記述になっていますか?FrontPageの時には一番上の<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">がなかったようです。これが原因でしょうか? それと二行目の<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 6.5.0.0 for Windows">は消すことはできないでしょうか? よろしくお願いします。

  • HTMLモードでの文字コードの変更について

    ホームページV4 Shift_JIS を UTF-8 に変更するにはどのようにすればいいのですか? <meta charset="shift-JIS"> → <meta charset="UTF-8">との回答していただきありがとうございます。ただ <meta http-equiv="Content-Type" content="text/html; ch。arset=Shift_JIS"> をどのように変更したらいいのかわかりません。HTMLモードで書き換えても文字化けします。よろしくお願いします。 ※OKWAVEより補足:「ソースネクスト株式会社の製品・サービス」についての質問です。

  • 文字化けが直りません。

    どうしてもUTF-8を指定すると文字化けしてしまいます。ご指導お願いします。 検索して調べたのですがわかりませんでした。 ブラウザーの設定等も必要なのでしょうか? ちなみにshift_jisにすれば文字化けしません。 以下ヘッダー部分です。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>TOPページ</title> </head> 以上、よろしくお願いします。

    • ベストアンサー
    • HTML

専門家に質問してみよう