※ ChatGPTを利用し、要約された質問です(原文:CSVファイルのダウンロード時に、パラメータ(Getメソッドで渡される)
CSVファイルのダウンロード時にパラメータをセットする方法
このQ&Aのポイント
CSVファイルのダウンロード時に、Javaサーブレット内でパラメータをセットする方法について説明します。
パラメータはGetメソッドで渡され、URLの末尾に付加されます。
この方法を使用することで、CSVファイルのダウンロード時に特定のパラメータをURLにセットできます。
CSVファイルのダウンロード時に、パラメータ(Getメソッドで渡される
CSVファイルのダウンロード時に、パラメータ(Getメソッドで渡される
CGI引数(QUERY_STRING環境変数の中身))を、
Javaサーブレット(doGetメソッド内)内で、以下のようにして
↓
final ResultSetMetaData meta = rs.getMetaData();
response.setContentType("application/octet-stream;charset=utf-16le");
final StringBuffer sbUrl = new StringBuffer();
sbUrl.append("KYOIKU.csv");
sbUrl.append("?").append("20101029162359");
response.setHeader("Content-Disposition", "attachment; filename="
+ sbUrl.toString());
out = response.getWriter();
として実行してみたところ、
半角の?(クエスチョンマーク)が、
半角の_(アンダーバー)に変換されて、
テキストファイルとして出力されています。
(KYOIKU.csv_20101029162359)
イメージとしては、doGetメソッドからのCSVファイルダウンロード時に、
URLとして、
「http://hogehoge.co.jp/KYOIKU.csv?20101029162359」
として、セット後に実行したいと思っております。
そこでご質問内容なのですが、
ネットで調べていて、先程たまたま、
「URLの末尾にユニークな捨て文字を付加するという手法」として、
「ダウンロードするファイルを、キャッシュにあるファイルとは別物だとIE
に思わせれば、結果的に目的を果たせます。
↓
(目的とは、CSVファイルのダウンロード時に直接[開く]を押下した場合に、
余計な→[1]文字列が自動的にExcelファイル名として追加されなくなること)」
という記事をたまたま見つけました。
それを試す為に、
「URLの?文字、およびそれ以降の文字列」を、
どのようにすれば、セットできるのか?
その方法を教えてください。
お世話になります。
宜しくお願い致します。
お礼
「hohoemikun」様 ご回答ありがとうございました。
補足
「hohoemikun」様 お世話になります。 ご回答ありがとうございます。 今回ご回答いただきました内容を見たところ、 「フォームに入力されたデータが、 すべてクエリ情報としてサーバに送信される」 とのことでしたが、 これを、 Javaサーブレット(doGetメソッド)内から、 直接「クエリ情報」をセットしてサーバへ送信する方法が もしございましたら教えてください。 「hohoemikun」様をはじめ、 もしご存知の方がいらっしゃいましたら、 ぜひ教えてください。 以上、宜しくお願い致します。