• ベストアンサー

JSPの質問です。IEでCSV形式のファイルはダウンロード可能でしょうか?

今、JSPをやっています。IEでCSV形式のファイルをダウンロードさせて表示させようとしているのですが、IEの 「コンテンツのタイプを経験的に判断し、サーバが指定したコンテンツタイプを無視して、コンテンツを普通に表示してしまう」 という機能のせいで困っています。 はたして、IEでCSV形式をJSPでダウンロードさせ、正しく表示させることはできるのでしょうか? ネスケに変えれば問題ないのかもしれませんが、JavaScriptをかなり使ってもいるので、ネスケだと今度はJavaScriptに依存している部分がおかしくなってしまうため、できればIEで続行したいのです。 お分かりになるかた、どうか解答をお願いいたします。

  • Java
  • 回答数2
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
noname#16216
noname#16216
回答No.2

JSPファイル中で、以下のようなコードを記述すればできますよ。  File downFile = new File(fileName); //ダウンロードしたいファイル  response.setContentType("application/octet-stream");  response.setHeader("Content-Disposition",   "inline; filename=\"" + downFile.getName() + "\"");  FileInputStream fis = new FileInputStream(   downFile.getAbsolutePath());  byte buff[] = new byte[4096];  DataOutputStream dos =   new DataOutputStream(response.getOutputStream());  int index = 0;  while((index = fis.read(buff)) != -1) {   dos.write(buff,0, index);  }  fis.close();  dos.close(); ちなみに、response はHttpServletResponseのオブジェクトですが、 サーブレットコンテナでデフォルトで定義されるオブジェクトなので 特に宣言なしで使えるはずです。。。

hameggs
質問者

補足

実はこの質問は私が知り合いに頼まれたものなのですが・・・・、質問するべき内容がまちがっておりました。 大変もうしわけございません。  しかしながら、とてもよい勉強になりました。お二方、解答ありがとうございました。

その他の回答 (1)

  • yuji
  • ベストアンサー率37% (64/169)
回答No.1

Servletでダウンロードを制御できるのであれば 参考URLが参考になるのではないでしょうか?

参考URL:
http://otn.oracle.co.jp/cgi-bin/non/msgview_r.cgi?COMMUNITYID=otn-697019&BBSID=1&NO=2169&VIEW=9

関連するQ&A

  • IEでjsp形式のファイルをダウンロードしようとする

    IEでjsp形式のファイルをダウンロードするようになってしまっているのですが、これをダウンロードせずに普通のHTML形式として表示するにはどのようにすればよいでしょうか?

  • IE6.0でCSVダウンロードができない

    いつも拝見しています。 今回はIE6.0で起こっている現象について困っている 事があります。 それは、IE6.0にてJavascriptのlocationを使用して作 成しているCSVファイルをダウンロードさせる様に開発 しているのですが、ファイルの保存ダイアログが表示さ れずに、CSVファイルがそのままブラウザで表示されて しまいます。(ネスケではダイアログが表示されます。 ) そのため、前画面の情報が消えてしまって大変困ってお ります。IEでもファイルの保存ダイアログが表示される 様にするにはどのようにしたらよいのでしょうか? 恐れ入りますがどなたかご存じの方がいらっしゃいまし たらご教授頂きたく存じます。 開発環境 サーバ:Windows2000Server IIS5.0 言語 :ASP ブラウザ:IE6.0、5.5SP2、NC4.78、NS7.1対象

  • jspからcsvファイルのダウンロード

    あるjspから、サーバ上に保存してある hoge.csvデータをダウンロードするには どのような方法がありますでしょうか? 動作としては、jsp内のボタンをクリックして、 特定のディレクトリにあるhoge.csvをダウンロードします。 色々調べてみましたが、サーブレットを経由しダウンロードさせるのが、 一般的なようですが、具体的な方法がわかりません。 1.jsp内のボタンに対する指示と、 2.(サーブレット)を読む場合ダウンロードに必要な指示 3.(サーブレットを動作させるための指示等) をご教示いただければと存じます。 宜しくお願いいたします。

    • ベストアンサー
    • Java
  • CSVファイルのダウンロードについて

    現在開発しているシステムでCSVファイルをダウンロードしたいのですがうまくいきません。どなたか問題の解決できる方お願いします。 現在、CGIでCSVファイルを作成しておきそれをファイルのリンクからダウンロードさせようとしています。 そこで問題になっているのがIEのバージョンが6以前なら普通にダウンロードが出来るのですが、バージョン6だとEXSELがブラウザ内で立ち上がります。 これの回避方法(まずダウンロードをしたいです。)はありませんか? 現在ファイルのヘッダーはこのようにしています。 print "Content-type: application/octet-stream\n" ."Content-Disposition: attachment; filename=aaa.csv\n\n" あと、このCGIプログラムをネスケ、mozillaで開くとソースがブラウザに表示されてしまいます。IEでは問題なく表示されるのにネスケとmozillaはどうしてこんなことが起きるのでしょうか? 少しわかりずらい文章になってしまって申し訳ありません。 どなたかお力を貸してください。お願いします。

    • 締切済み
    • CGI
  • csv形式のファイルをダウンロードさせたいのですが。

    はじめまして。MySQLとJSPを用いて、サイトページを構築する勉強をしているものです。まだ初心者ですが、行き詰まったので、是非教えていただきたいです。 現在、データベースに登録されているテーブルをcsv形式のファイルとしてダウンロードできるような仕組を考えているのですが、いい方法が思い付きません。そのページでは毎回選択されたテーブルを表示させているのですが、そこにそのテーブルのcsvファイルをダウンロードできるようにしたいのです。 select * into outfile ~を使用して、csv形式を作成したものをHTMLタグを使用してダウンロードするといった方法では何が足りないでしょうか?? ちなみにこれでは、select * into outfileで一度指定したファイルを作成してしまえば、既に存在するファイルとして新たに書き込めなくなるんではないかと既に困っています。 是非、教えていただきたいと思っています。よろしくお願いします。

    • ベストアンサー
    • MySQL
  • IE6でのCSVファイルダウンロードの仕方について

    いつもお世話になっています。 会社のPCでIE6へアップすることになり、動作を確認して いたのですが、タイトルのCSV形式でダウンロードする際、 IE5ではクリックで保存先選択のダイアログが表示された のですが、IE6ではそのまま表示されてしまいます。 今までと使い方が変わってしまったのですが、仕様が 変更されてしまったのでしょうか? またクリックで保存先選択のダイアログを表示させる方法がありましたら教えて下さい。 よろしくお願いします。

  • JSPでCSVのダウンロード処理

    仕事でJavaのWebシステムを組むことになったのですが、そのシステムの中にCSVファイルのダウンロードという機能を入れることになりました。 サーバのOSはLinuxなのですが、クライアントのOSはWindowsです。 CSVファイルは、クライアントにダウンロードして使うものなので、Linuxの文字コード体系がEUCだろうが、とにかく使う側の文字コードにあわせてやれば問題ないと思っています。 Linuxサーバ上で動くJSPで、文字コードをEUC以外にして(Shift-JISで)ダウンロード処理はできますよね? 私は出来るものと思っていたのですが、今回の仕事のメンバーに聞かれて、ちょっと不安になってきました。

    • ベストアンサー
    • Java
  • CSVファイルのダウンロードについて

    サーバー上にアップしたcsvファイルにアクセスすると ダウンロードの確認ダイアログが出ずに 画面上にテキストベースで表示されてしまいます。 フォルダオプションの設定で ダウンロード後に開くを確認するのチェックボックスを チェックしましたがうまくいきません。 宜しくお願いします。 ※Webサーバー・・・JRUN4 <-- sample.jsp --> <% response.setContentType("application/octet-stream-dummy; charset=iso-2022-jp"); %> <% response.setHeader("Content-Disposition","inline; filename=aaa.csv"); %> top.location.href=~aaa.csv ← ファイルのフルパス

    • ベストアンサー
    • Java
  • csv形式でダウンロードさせたいのですが。

    はじめまして。 今回、JSPでデータベースからもってきた情報をcsvでダウンロードさせる仕組をかんがえているのですが、まずは簡単にダウンロードできるのか試しているのですが、ダウンロードまではできたのですが、中身がjspのファイルのコードがそのまま表示されてしまいます。 初心者なので、是非アドバイスをお願いしたいです。 よろしくお願いします。 以下そのコードです。 <%@ page import="java.io.*, java.util.*, java.sql.*, javax.sql.*, javax.naming.*" %> <html> <head> </head> <body> <% response.setContentType("application/octet-stream"); response.addHeader("Content-Disposition","attachment; filename=kibou.csv"); out.println("a,b,c,d"); %> </body> </html>

  • IEでCSVファイルをダウンロードして開らいたときの添え字について

    おせわになっております。 使用ブラウザ:IE6.0 SP1 CSVファイルがリンクになっているところをクリックすると「ファイルのダウンロード」ダイアログが表示され、開くを押すとExcelが立ち上がります。Excel左上にファイル名が表示されている(シート名にもファイルが表示されている)のですが、xxxxxx[1].csvとなっています。この[1]はなんでつくのでしょうか?IEが使用するテンポラリフォルダに既に同一のファイルが存在するのでしょうか?「ファイルのダウンロード」ダイアログで保存を押すとxxxxxx.csvとなるのに。 何かご存知の方がおりましたら教えてください。

専門家に質問してみよう