• ベストアンサー

ファイルのダウンロード

小生それ程Perlに精通しておりませんので、あんまり難しいコードは理解できません。この間、ひーひー言いながら、このサイトのお力も借り、HTMLフォームからデータエントリするとWebサーバー上のテキストファイルでのデータベースに追加されていくシステムを作ることができました。そこでWebサーバー上にある、テキストファイルをローカルコンピュータにダウンロードするPerlのプログラムコードを知りたいのです。 お力添え宜しくお願いします。

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

  • ベストアンサー
回答No.2

サーバーにあるテキストファイルをダウンロードするプログラムですか。 しかし、アドレスバーにそのファイルのURLを打ち込めば、そのテキストファイルを表示・保存できると思いますけれども? もしくは普通にリンクをはるとか。 テキストファイルそのままではなく、perlで整形なりするならダウンロードも意味があるでしょうけれど。 それともファイル名が動的に変更されるとか? ともかく、 例えばボタンを押せばテキストファイルのダウンロードが始まるようにするには、ですよね。 スクリプトの書き出すヘッダを Content-type: text/download にすれば、CGIの実行結果がダウンロードされるようになりますよ。

souta_n
質問者

お礼

>アドレスバーにそのファイルのURLを打ち込めば、 >そのテキストファイルを表示・保存できると思いますけれども? あっ、ほんとだ!なるほど! ブラウザって拡張子がhtml以外でも表示できるんですね。ありがとうございました。

その他の回答 (2)

回答No.3

私は、LWPモジュールを使って取得したことがあります。 ---以下サンプル lwpsimp.pl ---- use LWP::Simple; $doc = get $ARGV[0]; print "$doc\n"; ---サンプル終了---- 実行方法 perl lwpsimp.pl http://localhost/ > out.txt でout.txtに出力されてるはずです。

参考URL:
http://digit.que.ne.jp/work/index.cgi?Perl%A5%E2%A5%B8%A5%E5%A1%BC%A5%EB%2FLWP
souta_n
質問者

お礼

これは先々役に立ちそうです。ありがとうございました。

  • sisya
  • ベストアンサー率39% (97/244)
回答No.1

データエントリと言うのは恐らくクエリー送信の事だと思うのですが、テキストファイルでのデータベースと言うのはどういう物なのでしょうか? 通常データベースと言うとSQLのRDBやXMLなどを思い浮かべるのですが使用しているデータベースが何かわかりますか? もしくは 「Webサーバー上のテキストファイルでのデータベース」 ↓ 「サーバ上にopenコマンドなどで作成したファイルにテキストデータを追加保存している」 と言う事なのでしょうか…

souta_n
質問者

補足

すいません。データベースというには大そうでした。 openコマンドでテキストデータにタブ区切りでデータ追加しているということです。データを保存しているファイル名も○○.txtです。別にデータは他のファイルとリレーションやリンクなどしていない単独のものです。

関連するQ&A