C# Получение ссылки из pastebin и загрузка по ссылке

Я пытаюсь получить ссылку из пастбина. Где ссылка - единственный текст в необработанной пасте. Тогда я хочу скачать файл по ссылке в pastebin.

   WebRequest request = WebRequest.Create("http://pastebin.com/raw/Dtdf2qMp");  

        WebResponse response = request.GetResponse();     

        System.IO.StreamReader reader = new  

        System.IO.StreamReader(response.GetResponseStream());

        Console.WriteLine(reader.ReadToEnd());

        WebClient client = new WebClient();

        client.DownloadFile (Link gotten from pastebin here, "c:\\File");

        System.Threading.Thread.Sleep(5000);

1 ответ

Вместо того, чтобы выводить текст, прочитанный на консольный вывод, вы должны назначить его переменной.

var pastebinOutput = reader.ReadToEnd();

Затем просто передайте это как ссылку для метода DownloadFile. Если вы хотите проверить, действительно ли это URL-адрес, полученный с оригинальной вставки, вы можете посмотреть System.Uriметод TryCreate.

У меня есть решение - если у вас есть ссылка в исходной ссылке pastebin (у меня есть файл.txt, в котором говорится, что "это сработало"), я предлагаю вам точно скопировать и вставить приведенный ниже код - если вы получите файл, в котором говорится, что это сработало 'тогда вы можете изменить ссылку pastebin и имена файлов. Если вы не хотите открывать файл, удалите Process.Start - если вы хотите изменить задержку, просто измените число (в миллисекундах). Кроме того, вы можете изменить формат с.txt на.exe или любой другой файл. (или вы можете удалить его, чтобы оно было именем по умолчанию в ссылке для загрузки):

WebRequest request = WebRequest.Create("https://pastebin.com/raw/QAWufg1z");
WebResponse response = request.GetResponse();

System.IO.StreamReader reader = new

System.IO.StreamReader(response.GetResponseStream());

var pastebinOutput = reader.ReadToEnd();

WebClient client = new WebClient();

client.DownloadFile(pastebinOutput, @".\downloaded.txt");
MessageBox.Show("File should open automatically in the next minute. Please wait...");
await Task.Delay(3000); //3000 = 3 seconds

Process.Start(@".\downloaded.txt");

Другие вопросы по тегам