//創建時間:2014-03-12
//創建人:幽林孤狼
//說明:FileUpload文件上傳控件使用說明(只是部分)已共享學習為主
//可以上傳圖片,txt文檔。doc,wps,還有音頻文件,視屏文件等,功能強大啊!
//前台代碼片,設置上傳圖片的界面
<div>
<asp:Label ID ="lbText" runat ="server" Font-Bold ="true" Font-Size ="20px" Text ="請選擇您要上傳的照片">
</asp:Label>
<br /><asp:Label ID="lbImg" runat ="server" ForeColor ="Red" ></asp:Label><br />
<asp:Label ID="hh" runat ="server" Text ="上傳路徑:"></asp:Label><br />
<asp:TextBox ID="txtFileName" runat ="server" ></asp:TextBox>
<asp:FileUpload ID="FileUpLoad1" runat ="server" />
<asp:Button ID="btnUpload" runat ="server" Text ="開始上傳" OnClick="btnUpload_Click" /> <br />
<asp:Label ID="hj" runat ="server" Text ="上傳的圖片如下"></asp:Label>
<br /> <asp:Image ID="img" runat ="server" />
</div>
//后台代碼 ,實現圖片從客戶端傳到服務器
protected void btnUpload_Click(object sender, EventArgs e)
{ //HasFile 獲取一個值,該值指示是否在 FileUpload 控件包含一個文件。
if (FileUpLoad1 .HasFile)
{
//PostedFile通過使用 FileUpload 控件上載的文件獲取的基礎的 HttpPostedFile 對象。public HttpPostedFile
//PostedFile { get; }
string fileContentType = FileUpLoad1.PostedFile.ContentType;
//判斷文件類型 當然也可以用file.Extension進行判斷,如:if(file.Extension!=".txt"){}
if (fileContentType == "image/jpeg" || fileContentType == "image/bmp" || fileContentType == "image/gif" ||
fileContentType == "image/png")
{
//客戶端文件路徑
string name = FileUpLoad1.PostedFile.FileName;
FileInfo file = new FileInfo(name);
//文件名稱
string filename = file.Name;
//服務器端文件路徑
this.txtFileName.Text = filename;
string webFilePath = Server.MapPath("Upload/"+filename );
//判斷相同文件是否存在
if (!File.Exists (webFilePath))
{
try {
//使用SqveAs()在 Web 服務器上將上載的文件的內容保存到指定的路徑
FileUpLoad1.SaveAs(webFilePath );
this.lbImg.Text = "提示:文件“"+filename+"”上傳成功!";
this.img.ImageUrl = "Upload/"+filename ;
}
catch (Exception ex) {
this.lbImg.Text = "文件上傳失敗,原因是"+ex.Message ;
}
}
}
else
{ this.lbImg.Text = "文件類型不符合";
}
}
}