• ベストアンサー

【教えて下さい!】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以外の言語を埋め込む必要がある場合、どこでどのようにそれを宣言するのか、といったレベルからご教授願います。 よろしくお願いいたします。

  • Chip2
  • お礼率50% (4/8)
  • HTML
  • 回答数3
  • ありがとう数3

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

  • ベストアンサー
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

  • exeファイルをWeb上で見せる方法

    FLASHは知識もありませんが、これから勉強していきたいと思っていますので、よろしくお願いいたします。 以下のところでダウンロードしてexeファイルで保存しています。 <a target="blank" href="guide_fullwin.exe">ダウンロード</a> 以下のように、自分のHPでも以下のURLを使わないでそれをWeb上で再生させたいのですが、どうすればできるのか教えてください。 よろしくお願いいたします。 <a target="blank" href="http://www.#/presentation/guide.swf">プレゼンテイション</a>

    • ベストアンサー
    • Flash
  • HTMLファイルをダウンロードさせる方法

    こんにちは HTMLで <a href="./abc.html">だうんろーど</a> この場合は、ページ遷移となりますが、このabc.htmlをファイルとしてダウンロードさせる書き方はあるのでしょうか? イメージとしては <a href="def.xls">えくせるふぁいる</a> これでエクセルファイルをダウンロードさせるような考え方です。 圧縮をしてダウンロードさせる方法以外でなにかあればお願いします。

  • HTMLの<a>タグで [テキスト文(.txt)] をIE以外(テキストエディタなど)で開けますか?

    たとえば <a href="test.txt" target=_blank> (あるいは、<a href="test.txt" target="(ジャンプ先)">)とした場合…  テキスト文はIEブラウザで html と同じように開きますが、 これをいきなり「ノートパッド」や「他のテキストエディタ」で開くようにできますか? つまり、<a href="test.pdf">PDF</a> ですと、いきなりAdobeのリーダーが開きますが、これと同じように、<a href="test.txt">をテキストエディタで開きたいのですが…。  よろしくお教え下さい。

    • ベストアンサー
    • HTML
  • ファイルにコーテーション類を書き込む方法

    HTMLのフォーム(Textarea)で入力したテキストを そのまま、ファイルに書き込みたいです。 (正式にはHTMLエディタのようにしたいです) 以下のソースのように作成しましたが、 シングルコーテーションやダブルコーテーションが ファイルに書き込まれる時に¥がついてしまいます。 ================== 入力フォーム =================== <html> <body> <form name='fm' action='fsave.php' method='post'> <textarea name='txt' rows='20' cols='40'> </textarea> <input type='submit' value='ファイル保存'> </body> </html> ================== fsave.php =================== <?php $txt = $_REQUEST["txt"]; $fp = fopen("sample.html","w"); fwrite($fp,$txt); echo "ファイル書き込み完了"; ?> =============== TEXTAREAへの入力値 =================== <a href='aaa.html'>LINK </a> =============== sample.htmlの中身 =================== <a href=\'aaa.html\'>LINK </a> シングルコーテーションやダブルコーテーションを フォームからPHPに渡して、ファイルに書き込むには どうすればよろしのでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • 「txtファイル」と「htmlファイル」

    こんにちは! 現在教科書を見てHTMLを勉強しております。 教科書に載っている例を見て、 以下の文章を入力したら、以下の文章のままブラウザに表示されました。 <!DOCTYPE html> <html lang="ja"> <head> <title>初めてのHTML</title> </head> <body> ようこそ、HTML5の世界へ </body> </html> 何を間違えたのか自分なりに調べたところ、 ファイルの種類がtxtになっており、ファイル名も「sample.html.txt」になっておりました。 このため、保存画面にて、ファイルの種類を「テキスト文書」から「すべてのファイル」に変えたところ、 ブラウザの表示は「ようこそ、HTML5の世界へ」になりました。 しかし、そのファイルを直接開いた場合にも、 「ようこそ、HTML5の世界へ」しか表示され、タグが記された文書が表示されなくなったため、 テキストの編集ができなくなってしまいました。 教科書を見ると、うまくいった場合には、 ブラウザに表示させた場合には、タグの入っていない文書が画面に表示され、 直接ファイルを開いた場合には、タグ付きの文書が画面に表示されるようなのですが… 私の方法が何か間違えているのでしょうか?

  • 新たなタブで開くタグはありますか?

    IE8を使っています。 <HTML> <HEAD> <TITLE>test</TITLE> </HEAD> <BODY> <A HREF="http://www.yahoo.co.jp/" target="_blank">yahooを新たなタブで開く</A> </BODY> </HTML> をすると、新たなウインドウで開いてしまいますが、 新たなタブで開くタグはありますか? http://computernlife.blog.fc2.com/blog-entry-5.htmlを見る限り、 一括でしか設定できないのでしょうか? ○target="_blank"の時は新たなウインドウ、 ○target="_???"の時は新たなタブ と言うようにはできないのですか?

    • ベストアンサー
    • HTML
  • ブログのHTMLからトラックバックをしたブログのURLの抽出

    ブログのHTMLから、そのブログのある記事に トラックバックをしたブログのURLを抽出するプログラムを作りたいと思います。 例えば、URLがhttp://blogs.yahoo.co.jp/example/1234というヤフーのブログの記事に、 http://blog.goo.ne.jp/example/1234 http://blogs.yahoo.co.jp/example2.html の二つのブログがトラックバックをしたとします。 このヤフーのブログの記事のHTMLは以下のようになります。 <html> <head> … <style="display:none">http://blogs.yahoo.co.jp/example/1234/trackback</div> … <tr id="tb_tab" style="display:block"> … <b><a href="http://blog.goo.ne.jp/example/1234" target=_blank>…</a></b> … <b><a href="http://blogs.yahoo.co.jp/example2.html" target=_blank>…</a></b> … </body> </html> そこで、トラックバックをしたURLを抽出するときに、 例えば、http://blog.goo.ne.jp/example/1234を抽出するのに、 target=_blankを参照して、 HTML中の<a href="http://blog.goo.ne.jp/example/1234" target=_blank>から http://blog.goo.ne.jp/example/1234を抜き出すようにして、 トラックバック先のURLを抽出するプログラムを作成したいです。 このようなプログラムを作成するにはどのようにプログラムを組めばいいのでしょうか? また、HTML中には、target=_blankで参照すると、以下のような <a href="http://rd.yahoo.co.jp/rss/b/blog/myblog/rss2/01/*http://blogs.yahoo.co.jp/example/rss.xml" target=_blank> [<a href="/example2/5242000" target=_blank> 余分な情報も抜き出してしまうので、上記を抽出しないように、 rssを含むもの、http:で始まらないものは抽出しないという条件で抽出できるようなら、 こちらの方法も教えていただきたいです。 よろしくお願いします。

    • ベストアンサー
    • Java
  • Excelでcsvやtxtで保存する時にダブルクォートが勝手に付く

    Excelで作ったデータにリンクがある時なのですが、csvかタブ区切りのtxtで保存すると勝手にダブルクォートが付いてしまいます。 勝手に入らない方法はないものでしょうか? 当方Excel2000です。 解決策をご存知でしたら、ぜひ教えてください!よろしくお願いします。 例:<A href="http://www.○○○.com" target="_blank">こちら</a> csvかタブ区切りtxtで保存して、テキストなどで開くと、 "<A href=""http://www.○○○.com"" target=""_blank"">こちら</a>" のような感じになってしまう。

  • 新ウィンドウの画像をクリックして閉じる

    画像を載せたホームページを作成しています。 target="_blank"で新ウィンドウで開いた画像をクリックして、新ウィンドウを閉じるにはどうしたら良いのでしょうか? これじゃダメなんでしょうか? <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <SCRIPT LANGUAGE="JavaScript"> <!-- function WinCls(){ window.close() } //--> </SCRIPT> <TITLE></TITLE> </HEAD> <BODY> <A href="aaa.jpg" javascript:WinCls()" target="_blank"><IMG src="aaa.jpg"></A> </BODY> </HTML>

  • HTMLのフレームについて

    左側にメニューを置き、右側をメインにしようとしているのですが、左側のメニューをクリックしても、左側にしか表示されません。 どうすれば良いか教えてください 全体のHTMLが <html> <Html Lang="ja"> <Head> <Title>○</Title> </Head> <Frameset cols="155,*" Frameborder="yes" Scrolling="auto" Bordercolor="#ffcc99"> <Frame src="メニュー~"> <Frame src="メイン~" name="main"> <Noframes> <body> <Center> <p> ○ </p> </Center> </body> </Noframes> </Html> 左(メニュー)のフレームは <html> <Html Lang="ja"> <Head> <Meta Http-equiv="content-type" Content="text/html; charset=Shift_JIS"> <Title>○</Title> </Head> <Body> <BaseFont Size="2"> <Font Size="2"> <A Href="~" target="main"></A><Img Src="ー" Border="0"></A><br> <br> <A Href="~" target="main"><Img Src="ー" Border="0"></A><br> <br> <A Href="~" target="main"><Img Src="ー" Border="0"></A><br> <br> <A Href="~" target="main"><Img Src="ー" Border="0"></A><br> <br> <A Href="~" target="main"><Img Src="ー" Border="0"></A><br> <br> <A Href="~" target="main"><Img Src="ー" Border="0"></A><br> </Body> </Html> ですよろしくお願いします

専門家に質問してみよう