Чтение содержимого файла с использованием относительного пути в веб-приложении - PullRequest
23 голосов
/ 02 декабря 2009

Как я могу прочитать содержимое текстового файла в моем веб-приложении, используя относительный путь / URL?

Файлы находятся в каталоге в корне моего приложения.

Я не хочу указывать полный путь к файлу, к которому я хочу получить доступ, поскольку моя тестовая среда не является точным отражением моей рабочей среды.

Ответы [ 2 ]

46 голосов
/ 02 декабря 2009

Используйте Server.MapPath("/path/to/file") и передайте результат этого File.ReadAllText():

String template = File.ReadAllText(Server.MapPath("~/Templates/") + filename);
7 голосов
/ 02 декабря 2009

Вы также можете использовать этот фрагмент кода.

using System.IO;
using System.Web.Hosting;

using (StreamReader sr = new StreamReader(VirtualPathProvider.OpenFile("~/foo.txt")))
{
    string content = sr.ReadToEnd();
}
...