プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

ASPからcsvファイルを動的に生成して(サーバには保存しないで)ダウンロードを実行するという方法は実現できています。
しかし、ダウンロードダイアログが表示された際に、「開く、保存、キャンセル」の中から「開く」を選択すると、Excelが起動しcsvファイルを読み込むのですが、
シート名が「 .csv]ファイル名[1] 」となってしまいます。(余計な文字がくっついてきます。)

この余計な文字がシート名に含まれないようにしたいのですが、何かよい方法はないでしょうか。
よろしくお願いいたします。


◆環境
サーバ:windows2003server
クライアント:windowsXP SP2
       EXCEL2000
       
◆csv生成時の設定
ContentType = "application/x-csv"
AddHeader "Content-Disposition" ,
 " attachment; filename = AAA20060928.csv"

A 回答 (2件)

この回答への補足

早速のご回答ありがとうございます。
なるほど、こんな方法もあるんですね。
勉強になります。

ただ説明が足りず申し訳ないのですが、
1.基本はあくまでcsvとしてのダウンロード
2.ダウンロード時にダイアログに「開く」ボタンも出てくるため、クライアントが開くを選択してしまうケースがある。
3.そして直接開くとシート名が変。
この3というのが、普通にクライアントマシンに保存してEXCELで開く分には問題ないのに、なんで直接開くとシート名が変になるのか理由がわからず困っている次第です。
よろしくお願いいたします。

補足日時:2006/09/29 13:59
    • good
    • 0

クライアントのIEの問題(?)なので、どうにもならないと思います。


「開く」を選択された場合、キャッシュを保存しておくディレクトリに一時的にファイルを保存しますが、そのときに、[1]と連番が振られてしまいます。
なので、利用者の方に、気になるなら、一度、保存してから開くようにお願いするしかないと思います。
    • good
    • 0
この回答へのお礼

お返事が遅れて申し訳ありません。
ご回答ありがとうございます。

あれから自分も色々調べてみて同じ結論に達しました。
これを踏まえてまた検討します。
ありがとうございました。

お礼日時:2006/10/13 10:34

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