fileupload上傳
① 急!!!FileUpload上傳圖片,在另一個頁面用Image顯示相應的圖片
這樣寫肯定有問題,上傳的文件名和顯示是的文件名不一樣。以下兩種解決辦法
1.在上傳頁面上傳成功後把上傳的文件名稱重命名為 sdr["檔案編號"] + '.' + 文件類型 (例如:0001.jpg)
在顯示頁面修改成
this.Image1.ImageUrl = "/~image/" + sdr["檔案編號"].ToString() + '.'+ 文件類型;
這樣要求的是上傳的文件重名成同一類型的,否則無法對應,就有可能顯示不出來。
2.在上傳頁面上傳成功後把上傳的文件名保存在資料庫中
string sql = "insert into file (姓名,檔案編號,發病時間,就醫時間,就診醫院,確診病因,治癒時間,圖片名稱) values ('" + name + "','" + no + "','" + fbt + "','" + jyt + "','" + hospital + "','" + sick + "','" + wellt + "','" + filename + "')";
在顯示頁面從資料庫取出圖片名稱
this.Image1.ImageUrl = "/~image/" + sdr["圖片名稱"].ToString();
就能顯示了
你把保存的一條記錄發上來看看。
要確保上傳路徑和顯示路徑是同一個目錄
還有就是你可以在瀏覽器中查看顯示頁面的html代碼看看image的路徑是什麼,把路徑復制,然後新打開個瀏覽器直接粘貼看看能不能顯示,不能顯示,再自己改改。其實只要保存到資料庫的文件名和上傳的一樣,就確定是路徑的問題了
② 用FileUpload控制項上傳文件,將上傳的文件,每一行賦值給結構體數組。請問,如何找到上傳的文件。
在界面上使用FileUpload控制項時,最好在此控制項後面添加一個保存按鈕,在按鈕中處理上傳控制項中的文件。
當用戶點擊按鈕,觸發按鈕事件時,首先判斷上傳控制項中是否選擇了文件
if (FileUpload1.HasFile)
{ ... }//在文件被選擇的情況下,才進行處理,基本上所有的處理代碼都可以寫在這個IF中。未選擇文件就忽略,不做處理。
string fileName = FileUpload1.FileName;//獲取文件名
string filepath = FileUpload1.PostedFile.FileName;//獲取文件客戶端路徑
//讀取上傳文件到內存中
Stream stm = FileUpload1.FileContent;
StreamReader sr = new StreamReader(stm);
string buffer = sr.ReadToEnd();//讀取流的當前位置到末尾
string[] fileLine = buffer.Split((char)0x0d);//根據換行分隔,存入到數組
也可以把上傳文件從客戶端保存到服務端
filePath = @"D:\upload\fileName.xls"; //保存至服務端的地址
FileUpload1.PostedFile.SaveAs(filePath);//進行文件的保存處理
③ ASP.Net如何用FileUpLoad實現多文件上傳
給你些建議哦:
1.多文件上傳沒有必要動態添加FileUpLoad,因為這種工作並沒有帶來多大的收益,因為你完全可以放置4個到5個FileUpLoad控制項,用戶上傳一般不會很多,假如超過5個也可以分多次上傳。
2.如果想動態添加,你首先要判斷用戶還是否有下個文件上傳,所以你必須添加一個BUTTON或者LABEL來讓用戶確認,比如:「上傳下一個文件」,用戶點擊的事件里寫:
FileUpLoad FUL = new FileUpLoad();
FUL.Name = "FUL" + Convet.ToString(i);//這個i是你要定義的全局變數,用於記錄用戶在同一次上傳中點擊了幾次控制項。點一次自加1,初始為0
this.Controls.Add(FUL);
i++;
獲得路徑就通過這個i,寫個循環來獲得,這樣LZ應該思路很清楚了吧。
④ fileupload 上傳時,出現文件訪問被拒絕的錯誤
你的文件上傳只能針對本網站內的目錄。
如果你想傳到C盤或D盤的目錄。因為使用的aspnet內置賬戶,不一定對文件夾 有寫入許可權。
⑤ 關於FileUpload控制項上傳文件大小限制問題
默認上傳文件大小4096KB,如果要上傳超過此大小的文件,會出現錯誤界面。可以對web.config文件做一下配置,就可以解決,解決方法如下:
1、首先創建一個名稱為 file_value 的html文件。