- - PR -
CSV形式、Tab形式、Excel形式などでダウンロードしたい
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-10-27 10:14
質問させてください。
ASPでselect文の結果をCSV形式、Tab形式などで保存したいのですが、 コードの書き方がいまいち分かりません。 (保存するまでのロジックとかです。) 最後は、a-hrefとかで保存先のファイルをダウンロードするっていうイメージですけど。 簡単で結構ですので、どなたかアドバイスをいただけたら嬉しいです。 よろしくお願いします。 | ||||
|
投稿日時: 2005-10-27 10:53
らいと申します。
えーと、いくつか質問を。 1.DBにSQL(SELECT文)を投げてレスポンスをカンマ形式orタブ形式で保存して、 それをダウンロードできるようにすればOK? 2.保存とダウンロードのロジックは分ける?それともいっしょでいい? 3.わけるのであれば、リンクは自動生成しないとダメ? それとも先に用意しておいて対応する? 4.カンマ形式とタブ形式一緒に作成するの? この辺によって結構ロジックが変わってくる気がしますが。 _________________ 一寸先は闇 安定してるシステムって言ったじゃん(泣) | ||||
|
投稿日時: 2005-10-27 11:01
1.ADO.NETでデータを取得
2.for文で回して、項目をカンマやタブで区切って結合 こんな感じ?動かしてみてないけど。
3.FileStreamとかで書き出す。 でいいんじゃないですか? 何が問題になっていますか? | ||||
|
投稿日時: 2005-10-27 11:14
らいさん、一郎さん、ご返答ありがとうございます。
詳細などを記載させて頂きます。 環境としては、とりあえず ・Windows2000 Pro + IIS ・ASP.NETではありません。テキスト(SakuraEditor)ベースに、VBScriptを打ち込んでいます。 やりたいことのイメージ ・SQL(select文)の実行結果を、CSV or Tab or Excel で保存したい。 ・画面上に、チェックボックスが何かで保存形式を選択できるようにする。 ・保存とダウンロードのロジックは、一緒でも構いません。 とりあえず、テスト的にシンプルな物を作ろうとしているだけです。 SQLの実行などは、問題ないのですが、そこからどのようにダウンロードまで持っていくのかが分からない状態です。一旦、どこかに保存するとしたら、どのように保存するのかなど。 このような感じです。 | ||||
|
投稿日時: 2005-10-27 11:33
らいです。
とりあえず、Excel形式はおいといて。 # いや、テキスト形式のものとロジックが違うので、とりあえず放置 SQLの実行とかは大丈夫ということなので割愛して 簡単にやり方でも。 1.Scripting.FileSystemObjectのオブジェクトを作成 ⇒テキストの吐き出し用 2.SQLの発行・Recordsetの取得 3.1.で作成したオブジェクトから、 TextStreamオブジェクトを作成する Ex. Set oTS = oFSO.CreateTextFile(ファイル名) …だったと思う。 ファイル名部分に、MapPath関数を使用しておけば、 ASPファイルと同位にファイルが作成できて便利。 4.レコードセットをFor〜Nextでまわす。 この前に、フィールド区切りをタブかカンマを選択させておく。 変数にしておくと便利。 まわして取得した文字列をWriteLineで書いていく。 5.TextStream、FileSystemObjectオブジェクトを閉じる。 これで、ファイルの作成はできる。 6.このままダウンロードさせるのであれば、JavaScriptで location.hrefを使ってやればいいんだっけ? で完了。 しかし、問題点が。 絶対に2人以上が同時にやらないこと。 ファイルがまず壊れます。 なんで、ダウンロードに関しては専用ページを用意して対応したほうがいいかも。 もしくは、同じページ内でダウンロードコーナーを設けるか。 こんなん出ましたが。 _________________ 一寸先は闇 安定してるシステムって言ったじゃん(泣) | ||||
|
投稿日時: 2005-10-27 15:22
らいさん、先ほどはありがとうございました。
FileSystemObjectを使用して、テキストの保存とかできました。 そこで、もう一つ質問させてください。 一応、JavaScript内に、Location.hrefを埋め込んで、ダウンロードしたいファイルのリンクを張りましたが、IEの画面上にそのまま表示されて、ダウンロード画面が表示されません。 これに関しては、どのように解決したらいいのでしょうか? アドバイスを頂けたら、幸いです。 | ||||
|
投稿日時: 2005-10-27 15:34
MIME の設定ですかね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-10-27 15:39
[HOW TO] ASP を使って動的なテキスト ドキュメントをクライアントに送信する
http://support.microsoft.com/default.aspx?scid=kb;ja;300108 |
1