2009-07-19 104 views
2

我試圖將「〜/ Uploads/Images /」轉換爲絕對路徑,我可以從中創建一個FileStream。我試過VirtualPathUtility和Path.Combine,但似乎沒有給我正確的道路。我得到的最接近的是VirtualPathUtility.ToAppRelative,但這只是該文件的位置,是C:的直接子節點。ASP.NET:Path.Combine與相對路徑

必須有辦法做到這一點。

+0

你想絕對路徑或絕對URL? – tvanfosson 2009-07-19 14:04:40

回答

8

您正在尋找MapPath方法。

// get the path in the local file system that corresponds to ~/Uploads/Images 
string localPath = HttpContext.Current.Server.MapPath("~/Uploads/Images/"); 

與Path.Combine一起使用它來創建一個文件路徑:

string fileName = Path.Combine(
         HttpContext.Current.Server.MapPath("~/Uploads/Images/"), 
         "filename.ext"); 
using (FileStream stream = File.OpenRead(fileName)) 
{ 
    // read the file 
} 
+0

太好了,謝謝。 – Echilon 2009-07-19 15:14:35