現在執筆中です。 データをファイルとしてダウンロードできるようにする †ここでは指定したデータをダイアログを表示して、Webブラウザでダウンロードできるようにする方法を紹介します。基本的な考え方は、「ファイルをダウンロードして保存できるようにする?」と同じです。 バイナリデータをダウンロードできるようにする †まず、バイナリデータをダウンロードできるようにする方法です。 次のコードを実行すると、Internet Explorerでは、「ファイルのダウンロード」ダイアログが表示され、デフォルトのファイル名が「test.bin」として、バイナリデータ"downloadData"で保存できるようにしています。このコードは、ページクラスに記述されているものとします。 #code(vbnet){{
「ファイルをダウンロードして保存できるようにする?」で紹介している注意事項のほとんどがこの場合でも当てはまりますので、ご確認ください。 テキストをダウンロードできるようにする †テキストファイルでも上記のバイナリファイルの方法と全く同じやり方で可能です。この場合は、Encoding.GetBytesメソッドにより文字列をバイト型配列に変換します。詳しくは、「文字列を文字コードを指定してバイト型配列のデータに変換する」をご覧ください。 ここではそのようなやり方ではなく、Writeメソッドを使用した方法を示します。 #code(vbnet){{
このようにすると、"Content-Type"の"charset"が自動的に付けられるようです。 上記の例では、ContentTypeを"application/download"にしています。これを"application/octet-stream"(あるいは、"text/plain")にすると、デフォルトの保存ファイル名の拡張子がないとき、強制的に".txt"がファイル名の最後につけられます(IE6.0で確認)。また"application/octet-stream"では、デフォルトのファイル名の拡張子がないときでも「ファイルのダウンロード」ダイアログに「開く」ボタンが表示されますが、"application/download"では表示されません。 関連 †
|