2014-04-04 4 views
0

Мне нужно проверить, нет ли файла или нет. файлов, имеющих шаблон в именах файлов, доступны по протоколу HTTP. и IF присутствует, а затем будет загружать их.Как проверить шаблон файла существует в HTTP?

Я знаю, чтобы проверить конкретный файл непосредственно по HTTP, но я не уверен, как достичь этого с помощью шаблона имени файла, такого как abc * .csv?

+0

1. Если вы можете запустить код на веб-сайте сервер, вы можете заставить сервер проверить вас. 2. Если у вас есть FTP-доступ к каталогу, вы можете получить из него список каталогов. 3. Вы можете попробовать все возможные имена файлов с помощью текущего метода. –

+0

Вы можете только проверить, соответствует ли имя файла шаблону, а не наоборот. Поэтому, чтобы делать то, что вы хотите, вам понадобится список файлов в первую очередь или зацикливать все возможности. –

+0

Как я могу получить список всех файлов на сайте HTTP? Я не уверен, есть ли способ сделать это? – azim

ответ

1

Прежде всего, вы должны проверить, если страница существует:

using System.Net; 
... 
private bool CheckIfRemoteFileExist(string url){ 
    try 
    { 
     //Creating the HttpWebRequest 
     HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; 
     //Setting the Request method HEAD, you can also use GET too. 
     request.Method = "HEAD"; 
     //Getting the Web Response. 
     HttpWebResponse response = request.GetResponse() as HttpWebResponse; 
     //Returns TURE if the Status code == 200 
     return (response.StatusCode == HttpStatusCode.OK); 
    } 
    catch 
    { 
     //Any exception will returns false. 
     return false; 
    } 
} 

Тогда, если он существует, вы можете загрузить страницу:

string content=string.Empty; 
if(CheckIfRemoteFileExist("myUrl")) 
    using(var client = new WebClient()) 
     content = client.DownloadString("myUrl"); 
else 
    MessageBox.Show("File seems dosen't exist"); 
+0

Проблема со мной в том, что у меня нет полного имени файла. Я должен проверить, существует ли файл с именами, имеющими «abc». Напр. http: //www.url.com/abc*.txt – azim

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