質問: asp.net でのcsvでのデータ出力をVBを使って、streamwriterを使って行いたいと思っています。データ出力は、クライエント側のPCのデスクトップ上に行いたいです。 環境は、windows7 proです。 具体的には、 1.ファイルパスの設定はどう記述するのか、 2.具体的コード例です。 よろしくお願いします。
回答: そのようなWebページを,www上に作成して公開しました。 利用したActiveXオブジェクトはFileSystemObjectで,ASPではなく単一のHTMLファイルだけで実現していますが。 IEでアクセスすると,ローカルファイルシステムに書き込むサンプル IE以外のブラウザでアクセスしても,何も起こりません。 また,IEでアクセスしても,このページに記載されている手順でセキュリティレベルを下げない限り,何も起こりません。 ページ上に記載されている手順を実行した場合に限り, アクセスしたクライアントのPCのローカル・ファイルシステム上に,テキストファイルが生成されます。(C:\hoge.txt) このテキストファイルの中には,固定文字列が書き込まれます。 もしクライアントのPC内にCSVファイルを生成したい場合は, 固定文字列の代わりに,カンマ区切りの文字列を格納し,書き込み先のファイル名の拡張子も.csvにします。 ファイルの内容は,固定文字列ではなく,ASP.NETによって動的に内容を決定する事ができるはずです。 コメント欄の下記のコメントを実現したものです。 >直接出力は無理があります。webサイトにアクセスしたら >クライアントのファイルシステムに自由に書き込みされるって >ウイルス的挙動は怖いと思いませんか? >(限定環境のイントラならできないことはありませんが間に1段要ります) それで,質問者様の場合はイントラ内での実装になるとは思いますが,セキュリティ面でご注意なさってください。