這是備份,原文請看我的網站 --
http://www.dotblogs.com.tw/mis2000lab/archive/2010/05/27/fileupload_io_create_dir_20100527.aspx
上禮拜的課程,討論到書本的第十七章(檔案與 I/O)、第十八章(FileUpload控制項)
有學員問道:「如果上傳檔案的 時候,發現上傳的目錄不存在,能否自動開一個同名目錄?」
底下的範例,用 「******************************」特別註明的這一段 就是這個功能。
我們可以利用書 本裡面,原本就有的範例
第十七章,範例 File_Log_2.aspx (功能:發現此一目錄不存在,自動開一個同名目錄)
修改一下第十八章的範例 1.aspx (功能:最基礎的檔案上傳功能)
兩者組合起來就能完成這一個簡單的小功能。
這個範例可以放 在第十八章 FileUpload做 補充。
VB範例如下:
02
03 '-- 註解:先設定好檔案上傳的路徑,這是Web Server電腦上的目錄。
04 Dim savePath As String = "C:\temp\uploads\"
05
06 '*******************************************
07 '** 需搭配 System.IO 命名空間
08 Dim my_Dir As String = "C:\temp\uploads\"
09
10 If Not Directory.Exists(my_Dir) Then
11 Directory.CreateDirectory(my_Dir) '--如果這目錄不存在,就建立它。
12 End If
13 '*******************************************
14
15 If (FileUpload1.HasFile) Then
16 Dim fileName As String = FileUpload1.FileName
17
18 savePath = savePath & fileName
19
20 FileUpload1.SaveAs(savePath)
21
22 Label1.Text = "上傳成功,檔名---- " & fileName
23
24 Else
25 Label1.Text = "請先挑 選檔案之後,再來上傳"
26 End If
27
28 End Sub
C#範例如下:
02 {
03 //-- 註解:先設定好檔案上傳的路徑,這是Web Server電腦上的目錄。
04 // C#語法在撰寫磁碟的目錄位置時,請留意以下的寫法:
05 string savePath = "c:\\temp\\uploads\\";
06
07
08 //************************************************
09 //** 需搭配 System.IO 命名空間
10 string my_Dir = "c:\\temp\\uploads\\" ;
11 if (!Directory.Exists(my_Dir))
12 {
13 Directory.CreateDirectory(my_Dir); //--如果這目錄不存在,就建立它。
14 }
15 //************************************************
16
17
18 if (FileUpload1.HasFile)
19 {
20 string fileName = FileUpload1.FileName;
21
22 savePath = savePath + fileName;
23 FileUpload1.SaveAs(savePath);
24
25 Label1.Text = "上傳成功,檔名---- " + fileName;
26 }
27 else
28 {
29 Label1.Text = "請先挑 選檔案之後,再來上傳";
30 }
31 }
......
寄信給我 mis2000lab (at) 雅虎.com.台灣
..............................................................................................................
ASP.NET 4.0 專題實務 (I) (松崗出版,VB版 / C#版)
範 例比上一本書增加 166%,內容(頁數)增加 135% 上 / 下兩集 (2010年)已經出版囉 ~ 歡迎到此參加團購
ASP.NET專題實務(II):範例集 與 4.0新功能(文魁出版)
.............................................................................................................. 寄信給我 mis2000lab (at) 雅虎.com.台灣 .......
留言列表