テキストファイルをダウンロードできるようにするには?

[上に] [前に] [次に]
慎次郎 2000/05/20(土) 14:43:10
たとえば、〜.exeをダウンロードできるように
a href="aaa/bbb/qwerty.exe"
とやれば、どこのディレクトリに落とすのかダウンロード用の
ウインドウが現れますよね。
そこで a href="bbb/ccc/pqrstu.txt" というように
テキストファイルをダウンロードするようにすると、
ブラウザー上にそのファイルの中身が表示されてしまいます。
これはテキストファイルがバイナリーファイルでない為だと
思われるのですが、JavaScriptで〜.txtはバイナリーファイル
であると一時的に認識させる方法(たとえば関数とかでバイナリー
ファイルとして扱う方法)とかないでしょうか?
いろいろ調べたのですが、どうしてもテキストファイルをダウン
ロードできるようにできません。(T_T)

慎次郎 2000/05/20(土) 14:55:56
ちなみにネスケではファイルであればちゃんとダウンロードできる
のですが、IEだとテキスト表示されてしまうのです。(T_T)

SA 2000/05/20(土) 15:10:41
テキストはむしろ表示するのが正しい動作ではないでしょうか。
圧縮してはいけないのですか?

慎次郎 2000/05/20(土) 18:21:58
>テキストはむしろ表示するのが正しい動作ではないでしょうか。
↑その通りです。正しい動作です。(^_^;)

でもちょっと事情がありまして・・・、すみません。

tororo [HomePage] 2000/05/20(土) 18:31:07
そのテキスト文章ヘリンクしてある所を右クリックして、
ファイルの保存をしてもらうのはどうですか?

(中学1年生でもわかります(自慢してます(爆)))

D.D. 2000/05/20(土) 23:28:02
サーバのMIME typeの情報を変えればいいと思います。

>IEだとテキスト表示されてしまうのです。(T_T
ちなみに、IEはMIME typeを参考にせず、ファイルの内容を自分で判断して、それなりの対応をするみたいです。

とほほ 2000/05/22(月) 01:18:42
私もこの問題には頭をかかえているのですが・・・・
D.D.さんの言われるように、IEはMIMEタイプを無視することが多いので、
ファイルを圧縮して .lzh や .zip にして配布するか、

「下記のリンクを右ボタンでクリック(Macの場合はしばらくクリック)
 して『対象をファイルに保存』などから保存してください。」

なんて書いておくしかないようですね。

andi 2000/05/22(月) 02:22:16
うちのIE5は気付かないうちにテキストファイルをDL
するようになっていたのですが・・・何故でしょう?

Fuji.♪ [E-Mail] [HomePage] 2000/05/22(月) 10:43:41
タイトルだけ見ると、「表示された段階で*ダウンロード*されてます」というツッコミが入るような。 (^_^;
サーバが出力するMIME typeを無視する以上、提供する側としてはユーザ環境に依存するからどうしようもない、というのが答えになる気がします。

dddd 2000/05/22(月) 11:17:23
Content-dispositionを使えば、IE5.xの挙動を制御できるかもしれません
というか出来ます。僕はWordのファイルをIEの中で開かせたくない時なんかに
AddHeaderしたりしますが、textファイルでもうまくいくのかな…
んー、とりあえずやってみて下さいな。
書式は
Content-disposition: attachment; filename=fname.ext
こんな感じ。
RFC1806が参考になるかと(ていうかRFC1806自体は既にRFC2183に
上書きされててRFC2183はRFC2184に上書きされててRFC2183とRFC2184は
RFC2231にobsoleteされ済みですが)。

tororo 2000/05/22(月) 17:59:09
フォルダを付くってその中に「index.html」をいれずに、その「TXT」
ファイルをいれて、それで,フォルダのアドレスをリンクする
のはどうですか??

dddd 2000/05/22(月) 18:03:18
>フォルダを付くってその中に「index.html」をいれずに、その「TXT」
>ファイルをいれて、それで,フォルダのアドレスをリンクする
>のはどうですか??
それでファイル一覧になったとしても、やっぱりそのtxtを
クリックすると表示しちゃうと思うよ。結局その場合でも
右クリックで保存とかになるから、説明が出ない分不親切に
なっちゃうのかも。

慎次郎 2000/05/22(月) 18:36:25
[[解決]]
みなさん、こんな変な質問にレスつけて頂いてありがとうございます。
しかし、IEの機能って・・・

>ddddさん
これはmetaでの定義でしょうか?一応、やってみます。

でも、やはりLZHにするのが一番楽なのかなあ。

なんかこんな質問がはずかしくなりましたので、解決とさせて
頂きます。(^_^;)ほんとにご意見ありがとうございました。

dddd 2000/05/22(月) 18:51:40
metaでなくて、直接HTTPヘッダに入れましょう。

慎次郎 2000/05/22(月) 18:58:17
>ddddさん
ご親切にありがとうございます。

[上に] [前に] [次に]