我正在處理一個asp.net文件瀏覽器,該瀏覽器以遞歸方式遍歷文件夾並列出其文件和子文件夾。不過,我也想讓文件可以下載/查看,它在那裏我似乎有問題。我無法獲得正確的地址轉換。我有以下配置和代碼。ASP.NET文件瀏覽器路徑轉換
編輯:
的問題是,所創建的
Response.Write(space + "<a href=" + "Upload/" + d.Name + ">" + d.FullName + "</a><br/>");
的鏈接不要鏈接到文件正確。還有一個額外的問題,我需要解決:一些文件名包含空格。
的Web.config
<appSettings>
<add key="UploadDirectory" value="~/Upload/"/>
</appSettings>
FileBrowser.aspx.cs
public partial class FileBrowser : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DirectoryInfo di = new DirectoryInfo(Request.MapPath(System.Configuration.ConfigurationManager.AppSettings["UploadDirectory"]));
if (Directory.Exists(di.ToString()))
printDir("", di.ToString());
}
protected void printDir(string space, string dir)
{
DirectoryInfo di = new DirectoryInfo(dir);
foreach (DirectoryInfo d in di.GetDirectories())
{
Response.Write(space + "<a href=" + d.ToString() + ">" + d.ToString() + "</a><br/>");
printDir(space + " ", dir + "\\" + d.ToString());
}
foreach (FileInfo d in di.GetFiles())
{
Response.Write(space + "<a href=" + "Upload/" + d.Name + ">" + d.FullName + "</a><br/>");
}
}
}
到底是什麼問題? –
鏈接。我現在編輯了這個問題,使其更清晰。抱歉。 – Teletha
我認爲與查克的答案你的第一個問題得到解決,如果文件路徑有空格然後url編碼它,然後urldecode它使用。 – Naresh