• ベストアンサー

【教えて下さい!】HTMLで作った画面から、txtファイルをダウンロードさせる方法

HTMLで作った画面から、.txtファイルを、保存先を自由に指定、ダウンロードさせる方法(書き方)を教えてください。なお、txtファイルと、ファイルをダウンロードするページのhtmlファイルは同じディレクトリにあります。 ダウンロードさせたいファイル名をaaatxtと仮定すると、現在は <html> <head> ******* </head> <body> <a href="aaa.txt" target="_blank">aaaのダウンロード</a> </body> </html> 以上のように書いています これだと、新たにウィンドウが開かれ そのツールバーから「ファイル」→「保存」で保存できるのですが これを、「aaaのダウンロード」をクリックすると「保存先の選択」→「保存」という手順でダウンロードさせるように変更したいのです。 当方、HTMLが少し分かる程度で、Java Script等の言語を知りません。 もしHTML以外の言語を埋め込む必要がある場合、どこでどのようにそれを宣言するのか、といったレベルからご教授願います。 よろしくお願いいたします。

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

  • ベストアンサー
noname#54215
noname#54215
回答No.1

txtファイルはクリックだけでダウンロードはできません。試してみてご存じだと思いますが、ブラウザにテキストが表示されます。 HTMLのみでやりたいのでしたら、目的のリンクのそばに 『右クリックでダウンロードしてください』 と書くだけで充分ですよ。 その場合target="blank"は要りません。

Chip2
質問者

お礼

やはりテキストファイルはできないのですね。 手持ちのHTMLのリファレンス類を見ても分からず ネットでいろいろ調べ、これは流用できるかも、と思ったソースコードも 対応できるファイル種別一覧でテキストファイルが除外されていたもので。 できないことがはっきりするとスッキリします。 ありがとうございました。

その他の回答 (2)

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.3

もし「.htaccess」が使える環境であれば、.htaccessで   AddType application/octet-stream .txt を指定しておけば、少なくともブラウザ画面に表示するケースは減るハズです(Firefox2、IE6で確認済み)。ただしブラウザ依存なので完璧には制御できません。IE7は無視して表示してしまうようです(Content-Typeよりも拡張子を優先する悪癖)。 phpやPerlなどのサーバサイドスクリプトを使えれば確実なのですが、これもご利用のサーバで使えるのかどうかの確認から・・ですね。

Chip2
質問者

お礼

ありがとうございます、 不特定多数のPC環境で使用するものを作っていること、 また、個人的な力量と時間の問題からも 今回はHTMLだけで作るのが一番であることから とりあえず現在のままで完成ということにします。 (すいません、.htaccess、と言われた時点で山登りをやめました。。。。)

  • mcroo
  • ベストアンサー率50% (13/26)
回答No.2

リンクを踏んだ時の動作は個々人の設定やブラウザによってマチマチなので 外部のテキストファイルを読み込む (または、ソース内に記述して) ダウンロードさせるというよりは、ファイルとして書き出す。 という事は、不可能ではないようですが 現行の様にリンクを張って、右クリックのメニューで ファイルを保存して欲しい旨を明記する方が確実かつ簡単だと思いますが なにかの不具合があるのでしょうか?

Chip2
質問者

お礼

もともとHTMLを含め、プログラミングをする部署ではないのですが ひょんなことからブラウザで閲覧できる形式で商品取扱説明書を作れと言われまして 作ったものを先輩に見せたところ、「できれば普通にダウンロードできた方が格好がいい」とのお言葉をいただきました。 ただ、技術的に無理であることがはっきりすれば問題は無いので、 三人の方から 「不可能、もしくは非常にややこしい(少なくとも私がちょっときいて分かるレベルではない)」 ということを教えていただき 自信を持って「できません」と言えるようになりました。 ありがとうございました。

関連するQ&A

専門家に質問してみよう