2013-03-11 4 views
1

Я хочу читать файлы веб-каталога. когда я использую этот код.Как получить имя файла каталога из сети

string[] files; 
string webfilepath = "http://www.anydomain.com/templates/images"; 
files = Directory.GetFiles(webfilepath, @"*.*", SearchOption.TopDirectoryOnly); 

код показывает формат URL ошибки не support.is там какой-нибудь другой способ чтения веб-каталога. благодарит заранее.

ответ

0

Вы пытаетесь передать url в Directory.GetFiles вместо прохождения физического пути папки, Вы можете использовать Server.MapPath, чтобы получить физический путь URL, если он доступен т.е. кода для доступа к папке работает на станок URL является точкой , Если url на другой машине, то вы не можете использовать Directory.GetFiles.

1

есть ли другой способ чтения веб-каталог

No. HTTP не имеет «индекс каталога» вы можете восстановить, если сервер (или программное обеспечение, работающее на нем) не создает он сам, например, Конфигурация Apache Options +Indexes. Но тогда этот индекс генерируется в HTML, который вам придется анализировать, чтобы получить полное имя файла.

0

Вы не можете сделать это в общем виде. Потому что до веб-сервера, как он сбрасывает содержимое каталога на клиент, если он вообще это делает.

Прежде всего, вам нужно убедиться, что ваш сервер отправляет контент с использованием какого-либо протокола. то вы можете использовать HttpWebRequest для отправки HTTP-запроса и получения результата. вам нужно будет выполнить свой собственный анализ в конце дня.

Смежные вопросы