2012-09-02 17 views
0

我想讀取* .txt文件並編輯此文件。我使用Webmatrix,它可以在我的電腦上運行。但是在將其發佈到服務器(Web部署)之後,它不再起作用。訪問服務器上的文件(asp.net,webmatrix)

string transmission; 
string path; 
path = "E:\\Documents\\My Web Sites\\Trackercontrol v2\\backup.txt"; 

public int insert() 
{ 
    using (StreamReader sr = File.OpenText(path)) 
    { 
     while ((transmission = sr.ReadLine()) != null) 
     { 
      // etc. 
     } 
    } 
} 

我發表了這個,調整了.txt文件的路徑,但try/cath方法告訴我路徑的訪問被拒絕。我認爲讀出文件不是問題,但編輯或清除文件會導致此問題。

我該如何解決這個問題?非常感謝你!

回答

0

您提供了本地驅動器的路徑,該驅動器可能確實不存在於服務器上。首先在服務器上上傳文件,然後閱讀它。你可以得到正確的路徑爲

string path; 
path = Server.MapPath("~/filename.txt"); // Considered file is placed at Root of your site 
+0

我改變了路徑文件的位置服務器 – jasdefer

+0

@ user1641721然後發生了什麼? –

+0

對該文件的訪問被拒絕^^ – jasdefer

0

檢查應用程序池在哪個帳戶下運行? 確保此帳戶具有對所涉及文件的讀/寫訪問權限。

而且,這將是一個好主意,用

var path = Server.MapPath(relativePathToFile); 
+0

非常感謝您的幫助。我嘗試使用相對路徑到文件。我對這個主題很陌生。但是,我可以在Webmatrix中授予對帳戶的讀/寫訪問權限,還是必須在服務器調整中執行此操作? – jasdefer

+0

這將不得不是服務器調整。我不認爲web矩陣可以發佈權限 – nunespascal

+0

好的,謝謝,我跟服務器管理員討論這個問題。 爲什麼使用你的想法更好的路徑?我需要包含任何東西嗎?我得到一個錯誤使用 var path = Server.MapPath(「backup.txt」); – jasdefer