• 締切済み

CSVファイルについて

CGIで吐き出したCSVファイルを accessにインポートしようとしているのですが そのCSVファイルのエンコードが 西ヨーロッパ言語だと解釈されてしまうのです。 秀丸エディタなどで開くと普通にSHIFT-JISで 開くのですが、何が原因なのでしょうか。 ちなみにCGIで吐き出す際はSHIFT-JISで吐き出しています。 当方、あまりプログラムの知識は無いのですが、 クライアントとプログラム製作者の間での連絡役を担当しているので、少しでも解決のヒントがあればと思っています。 心当たりのある方、どうぞよろしくお願いします。

  • Perl
  • 回答数2
  • ありがとう数2

みんなの回答

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

HTTP応答ヘッダContent-Typeを確認してみては。 charsetが指定されてなかったり、間違っていたら、明示的に指定してみるとか。

参考URL:
http://www.studyinghttp.net/charset
pochitarou
質問者

お礼

どうもありがとうございます。 その部分も大丈夫みたいなのです。 リンク先のページ理解を深めるのに参考になりそうです。

pochitarou
質問者

補足

この場を借りて補足いたします。 実はこういう事だったようです。 http://support.microsoft.com/?scid=kb;ja;416601&spid=1265&sid=50 仕様という結論なんですね・・・。汗 皆様どうもありがとうございました。

  • myaa_myu
  • ベストアンサー率52% (9/17)
回答No.1

プログラムに吐き出す際は本当にSHIFT-JISで吐き出されておりますでしょうか? 私の場合はjcode.plなどのライブラリを使用して # 変数$csv_dataに格納されたデータをShift_jisに変換する &jcode::convert(\$csv_data,'sjis'); という処理をして、正常に開けていますので、もう一度確認してみてください。

pochitarou
質問者

お礼

どうもありがとうございます。 sijisへの変換はちゃんとされているようなのです。 なぜかアクセスに取り込む時だけ化けちゃうんですよね。

関連するQ&A

  • charset=UTF-8なのにShift-JISになっちゃいます!

    <META http-equiv=content-type content="text/html; charset=UTF-8"> と記述して、ブラウザ(IE6)で確認したのですが真っ白な画面になり、ブラウザのエンコードを確認した ところShift-JISになっていました。自動選択にしてもShift-JISになってしまいます。 UTF-8でどうしてもウェブを作りたいのですがエンコードがShift-JISにならない方法を教えていただけないでしょうか? 使っているエディタは秀丸です。

    • ベストアンサー
    • PHP
  • Sublime Text2でエンコード表示

    いつもお世話になっております。 Windows XPにてSublimeText2を利用しています。 ファイルがUTF-8とShift-JISでかかれたものが混在しており SublimeText2で編集中のそのファイルがどちらの文字コードなのかを知りたいと思うのですが 秀丸エディタみたいに右下にエンコードが分かる表示設定などはありますか? よろしくお願いいたします。

  • CSVファイルを守るには・・・?

    データバインダ方式を利用したサイトなので、CSVファイルを アップロードしているんですが、そのファイルに直接、アクセス されてきたら、丸ごとそのファイルをダウンロードされてしまい、 せっかく、そのようなサイトをこしらえても、なんのこっちゃ分かりません。 そのディレクトリ内にアクセスしてくる場合には、必ず、index.htmlを 見るようにする、とか言った「CGIプログラム」があれば 良いんでしょうけど・・・・?そんなプログラム見たことが有りません。 アクセス制限CGIを試してみましたが、直接アクセスしてみたら、 やはり、易々とダウンロードできてしまいました。(TT;) どなたか、CSVファイルを守るお知恵を 拝借させていただけませんでしょうか?以上、よろしくお願い申し上げます。

    • ベストアンサー
    • CGI
  • phpMyAdminのインポート機能(LOAD DATA)を使って、S

    phpMyAdminのインポート機能(LOAD DATA)を使って、Shift-JisのCSVファイルを、utf8_general_ciのテーブルへインポートするにはどうしたらよいでしょうか? ▽現状 ・インポートすると、日本語の列の部分だけ、何も表示されない。 ・エディタで、CSVファイルを、UTF-8に変換すると、普通に取り込める。 ▽環境 ・phpMyAdmin … 2.10.1 ・MySQL … 5.1.22-rc ちなみに、どうしてもムリの場合、 エディタではなくPHPで何か変換処理するには、 どうすれば書けばよいでしょうか?

    • ベストアンサー
    • PHP
  • Shift_JISコードでファイルを生成する方法

    いつもお世話になります。 環境サーバLinax、クライアントWindows2000、IE6でプログラミングしています。 JSPで、FileWriterを使用してCSVファイルを生成しているのですが、EUC-JPコードで記録されてしまい、リンクを張ってもクライアントにダウンロードしたCSVファイルは文字化けしてしまいます。 new String(strVal.getBytes("8859_1"),"Shift_JIS") と変換して書き出しても文字化けが起こるばかりでどうしようも無いです。 どうすればShift_JISでファイルを生成できるのか、またはShift_JISでファイルをダウンロードする方法を教えてもらえないでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • badファイルの内容を知る方法

    Oracle9iでsqlldrを使い csvファイルのインポートを 行ったのですが、インポートが 行えず、badファイルと言うものが出来ました。 この中にエラーの内容が記されているそうなのですが、 エラー内容が確認出来ませんので、 確認方法をご存知の方がいらしたら、書き込み願います。 ちなみにExcelで開くと、データとなるCSVファイルの 内容だけしか表示されません。 秀丸等のエディタで開くと文字化けします。

  • Excelでcsvファイルをエクスポートしても、""を残しておきたい

    csvファイルをインポートしてExcelで編集し、また、csvファイルとして書き出しテキストエディタで開くと、元のcsvファイルにはあった文字列の引用符「""」が消えてしまいます。 以前にも同じ質問があったようなのですが、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=777349 情報を編集するのではなく、新しく追加したいので""を※※に置換しておくというような方法は使えません。 誰か分かる方教えてください。 よろしくお願いします。m(_ _)m

  • CSVの文字コードについて

    現在、業務でAccessから住民票のデータをCSVに出力する処理を開発しています。 その際に、中国人の氏名が一部「?」で表示されてしまいます。 調べたところ、「?」で表示される漢字はCSVを作成した際に設定される エンコード「Shift-Jis」では表示することができないようです。 これを回避するために、CSVのエンコードを変更したいのですが そのためにはどのようなロジックを組み込んだらいいのでしょうか? また、Excelに出力し → Unicodeテキスト → CSVの順にファイルを変換すると 中国人の氏名は正しく表示されるのですが その際にCSVの項目をタブ区切りにすると Excelから開く場合では各セルに表示され カンマ区切りにすると Excelから開く場合では各セルに表示され 各行のA列に "AAA","","BBB" のような形で表示されてしまいます。 テキストエディタから開く場合ではカンマ区切り、Excelから開く場合では各セルに表示されるようにすることは可能でしょうか? よろしくお願いします。

  • fgetsでcsvファイルを読み込めなくなる!?

    fgetsでcsvファイルを読み込めなくなる!? Cを使って、csvをfgetsで読み込むプログラムを作っています。 実際に製作し、csvファイルを(A.csvとします)読み込むことができました。 しかしデスクトップ上で 「新規作成」 →「txtファイルを作成」 →「拡張子を.csvにし、csvファイル(B.csv)を作成」 →「Aの中身をコピーし、Bにペースト」 を行い、B.csvを読み込もうとすると、 読み込むことができません(正確には文字化けした、単語が数文字表示される) これは何が原因なのでしょうか? ご教授お願いいたします。

  • 【VBA】保存したcsvファイルをメモ帳でUTFに変換する方法を教えてください。

    VBAの初心者です。 皆様のお力をお借りしたい次第です。 今私はデスクトップに保存したcsvファイルをUTFに変換し、 windowsメールでアドレスのインポートをしようとしていますが、 csvファイル自体をUTFに変換すると文字化けをしてしまうため、 メモ帳でUTFに変換→csv保存をしたいと思っております。 メモ帳をExcelから命令するにはどうしたらいいでしょうか? 以下はUTFに変換する際に使用させてもらったものです。 Dim JIS, UTF Set JIS = CreateObject("ADODB.Stream") JIS.Open JIS.Type = 2 JIS.Charset = "shift_jis" JIS.LoadFromFile "C:\~\JIS.csv" Set UTF = CreateObject("ADODB.Stream") UTF.Open UTF.Type = 2 UTF.Charset = "utf-8" JIS.CopyTo UTF UTF.SaveToFile "C:\~\UTF.csv", 2 JIS.Close Set JIS = Nothing UTF.Close Set UTF = Nothing

専門家に質問してみよう