从asp.net应用程序读取/写入文本文件的操作

时间:2015-01-12 13:52:44

标签: c# asp.net .net read-write

我正在尝试读取/写入位于我网站根目录的文本文件。我正在使用asp.net开发服务器(我的本地机器)。

当我读取文件时,它会抛出此异常

Access to the path 'C:\Program Files\Common Files\Microsoft Shared\DevServer\10.0\error.txt' is denied.

我正在使用以下代码行来读取/写入文本文件

 var text = File.ReadAllText(Server.MapPath("error.txt"));
    File.WriteAllText(@"error.txt", text + " \n " + "newnewnew text");

有什么问题,为什么我的server.MapPath检索我的c盘的路径?当它应该检索我的网站的绝对路径时,即

website1/error.txt

1 个答案:

答案 0 :(得分:1)

如果您更改以下行

File.ReadAllText(Server.MapPath("error.txt"));

File.ReadAllText(Server.MapPath("~/error.txt"));

它将搜索应用程序根目录中的文件。如果您将文件存储在名为" MyFiles"的文件夹中。在根目录内,然后路径将如下所示

File.ReadAllText(Server.MapPath("~/MyFiles/error.txt"));

希望这有帮助。