Posted on
2005-10-18 10:45
飞鼠
阅读(
139)
评论()
收藏
举报

上傳下載#region 上傳下載


上傳功能#region 上傳功能
public string GetFileName()

{
FileName1 = txtA23_6.PostedFile.FileName;//取檔案名稱
FileName2 = FileName1.LastIndexOf("\\",FileName1.Length);//取整個路徑最後一個\的位置
FileName3 = FileName1.Substring(FileName2+1);//只取最後一個\之後的檔案名稱
return FileName3 ;
}

public void btnUpload_Click(Object sender, EventArgs e)

{
FileName4 = Server.MapPath("..\\upload\\rcnb01b\\")+GetFileName(); //取得伺服器路徑和檔案名稱
// ViewState["Name"]=GetFileName();
int fileLength = txtA23_6.PostedFile.ContentLength;

if (!Directory.Exists(Server.MapPath("..\\upload\\rcnb01b\\")))

{
Directory.CreateDirectory(Server.MapPath("..\\upload\\rcnb01b\\")).ToString();
}

if(GetFileName().Length<=100)

{
if(txtA23_6.Value.Trim() == null || txtA23_6.Value.Length == 0 || "".Equals(txtA23_6.Value))

{
bs.CommFuns.ShowMessage(this.Page,"請選擇您要上傳的檔案位置 !!");
bs.CommFuns.SetFocus(this.Page,txtA23_6);
}
else

{
// if (!Directory.Exists(Server.MapPath("..\\upload\\"+txtA23_7.Text.Trim()+"\\")))
// {
// if(fileLength==0) //若上傳檔案的大小為0,則顯示:"檔案上傳失敗!!"
// {
// bs.CommFuns.ShowMessage(this.Page,"檔案的大小為0,檔案上傳失敗!!");
// }
// else
// {
// string di = Directory.CreateDirectory(Server.MapPath("..\\upload\\"+txtA23_7.Text.Trim())).ToString(); //自動創建目錄
// string FileName5=Server.MapPath("..\\upload\\"+di+"\\")+GetFileName();
// try
// {
// txtA23_6.PostedFile.SaveAs(FileName5); //上傳儲存檔案到指定的目錄
// bs.CommFuns.ShowMessage(this.Page,"檔案上傳成功!!");
// }
// catch
// {
// bs.CommFuns.ShowMessage(this.Page,"檔案上傳失敗!!");
// }
// }
// }
// else
// {
if(File.Exists(FileName4)) //判斷檔案是否存在

{
try

{
txtA23_6.PostedFile.SaveAs(FileName4); //上傳檔案到指定的目錄
bs.CommFuns.ShowMessage(this.Page,"檔案存在!! 已覆蓋檔案 !!");
txtA23_7.Text=GetFileName();
}
catch

{
bs.CommFuns.ShowMessage(this.Page,"檔案上傳失敗!!");
}
}
else

{
if(fileLength==0) //若上傳檔案的大小為0,則顯示:"檔案上傳失敗!!"

{
bs.CommFuns.ShowMessage(this.Page,"檔案的大小為0,檔案上傳失敗!!");
}
else

{
try

{
txtA23_6.PostedFile.SaveAs(FileName4); //上傳儲存檔案到指定的目錄
bs.CommFuns.ShowMessage(this.Page,"檔案上傳成功!!");
txtA23_7.Text=GetFileName();
}
catch

{
bs.CommFuns.ShowMessage(this.Page,"檔案上傳失敗!!");
}
}
}
// }
}
}
else
bs.CommFuns.ShowMessage(this.Page,"文件名長度超過100!!");
}

#endregion


下載功能#region 下載功能
public void btnDownload_Click(object sender, System.EventArgs e)

{
if(txtA23_7.Text.Trim()=="")

{
bs.CommFuns.ShowMessage(this.Page,"不存在檔案");
}
else

{
if(!File.Exists(Server.MapPath("..\\upload\\rcnb01b\\")+txtA23_7.Text.Trim()))

{
bs.CommFuns.ShowMessage(this.Page,"不存在此檔案");
}
else

{
FileDownload(Server.MapPath("..\\upload\\rcnb01b\\")+txtA23_7.Text.Trim());
}
}
}

private void FileDownload(string FullFileName)

{
FileInfo DownloadFile = new FileInfo(FullFileName);
Response.Clear();
Response.ClearHeaders();
//Response.Expires=0;
Response.Charset = "utf-8";
Response.Buffer = true;
// byte[] buffer = new byte[1000];
//
// System.IO.Stream FileStream=File.OpenRead(FullFileName);
// int numBytesToRead = (int) FileStream.Length;
// FileStream.Read(buffer,0,numBytesToRead);
// FileStream.Close();

Response.ContentType = "Application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AppendHeader("Content-Disposition","attachment;filename=" + txtA23_7.Text.Trim());
Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);

Response.Flush();
Response.End();

}

#endregion

#endregion