- - PR -
サーバにアップロードしたファイルの削除
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-09-22 11:16
いつも参考にさせて頂いてます。(^^)
またまた相談なのですが、(VB.netです。) Protected WithEvents In_File As System.Web.UI.HtmlControls.HtmlInputFile ・ ・ ・ Me.In_File.PostedFile.SaveAs(フルパス) で、サーバにアップロードしたファイルを削除する方法がわかりません。 ご存知の方、教えてください。お願いします♪ |
|
投稿日時: 2003-09-22 11:23
これでどうでしょう?
System.IO.File.Delete(フルパス) |
|
投稿日時: 2003-09-22 14:05
うー・・・。
System.IO.File.Delete(フルパス) って、やってみましたけど削除されませんでした。 エラーにもならないけど、削除されてません。。。 |
|
投稿日時: 2003-09-22 14:17
Deleteはファイルが無い時に例外を投げないので
deleteの直前でSystem.IO.File.Exists(フルパス)をいれて デバックで動かしてファイルが認識できているか確認してみてもらえますか? これでファイルが存在していても消せないならあとはフォルダのアクセス権限とか だけどそれだとアクセス権限が無いっていうエラーでる筈だしなぁ・・・ |
|
投稿日時: 2003-09-22 14:40
おお。
System.IO.File.Exists(フルパス) = False でした。(^^;) すみません。削除以前の問題ですね。 そもそもサーバのフルパスって、 http://から始めると「URLはサポートしてません」って 言われるから、http://を除いて書いてるのですが、 それがマズイのですかね、、? |
|
投稿日時: 2003-09-22 14:43
うっ・・・
フルパスってc:\xxxとかのことなんですが url形式での指定はできないです Me.In_File.PostedFile.SaveAs(フルパス) での指定形式と実際に格納されるところがどうなってるのか分かりませんが 格納先のパス例えば c:\tmp\xxxx.txt とかです。 |
|
投稿日時: 2003-09-22 15:05
Me.In_File.PostedFile.SaveAs("/サーバ名/フォルダ名/ファイル名.拡張子")
でアップロードしてます。 で、 System.IO.File.Exists("/サーバ名/フォルダ名/ファイル名.拡張子") = False なのが不思議ですよね? |
|
投稿日時: 2003-09-22 15:14
それで実際にMe.In_File.PostedFile.SaveAs(フルパス)
でファイルは作成されているんですよね? であれば Server.MapPath(("/サーバ名/フォルダ名/ファイル名.拡張子")) で実際の ファイルの格納先が取れると思うので取れたパスを使ってexists と delete を試してみてください。 |