Как ПОЛУЧИТЬ данные из URL и сохранить их в файл в двоичном файле в C#.NET без путаницы кодирования?

Из MDN в window.onerror :

Когда функция возвращает true, это предотвращает срабатывание обработчика событий по умолчанию.

См. Также хром Issue 92062 : strike>

В Chrome возвращение true из window.onerror позволяет распространять ошибку и возврат false подавляет его.

Это обратное поведение в Firefox и IE, где возвращение «true» подавляет ошибку, но возвращение false распространяет ее.

Примечание: проблема, упомянутая выше, была исправлена, поведение теперь такое, как упомянуто в MDN для всех браузеров.

20
задан Vivek Jain 7 July 2014 в 11:18
поделиться

3 ответа

Минималистский ответ:

using (WebClient client = new WebClient()) {
    client.DownloadFile(url, filePath);
}

Или в PowerShell (предложено при анонимном редактировании):

[System.Net.WebClient]::WebClient
$client = New-Object System.Net.WebClient
$client.DownloadFile($URL, $Filename)
55
ответ дан 29 November 2019 в 22:42
поделиться

Просто не используйте StreamReader или TextWriter. Сохраните в файл с необработанным FileStream.

String url = ...;
HttpWebRequest  request  = (HttpWebRequest) WebRequest.Create(url);

// execute the request
HttpWebResponse response = (HttpWebResponse) request.GetResponse();

// we will read data via the response stream
Stream ReceiveStream = response.GetResponseStream();

string filename = ...;

byte[] buffer = new byte[1024];
FileStream outFile = new FileStream(filename, FileMode.Create);

int bytesRead;
while((bytesRead = ReceiveStream.Read(buffer, 0, buffer.Length)) != 0)
    outFile.Write(buffer, 0, bytesRead);

// Or using statement instead
outFile.Close()
14
ответ дан 29 November 2019 в 22:42
поделиться

Я использую следующее:

sUrl = "http://your.com/xml.file.xml";
rssReader = new XmlTextReader(sUrl.ToString());
rssDoc = new XmlDocument();

WebRequest wrGETURL;
wrGETURL = WebRequest.Create(sUrl);

Stream objStream;
objStream = wrGETURL.GetResponse().GetResponseStream();
StreamReader objReader = new StreamReader(objStream, Encoding.UTF8);
WebResponse wr = wrGETURL.GetResponse();
Stream receiveStream = wr.GetResponseStream();
StreamReader reader = new StreamReader(receiveStream, Encoding.UTF8);
string content = reader.ReadToEnd();
XmlDocument content2 = new XmlDocument();

content2.LoadXml(content);
content2.Save("direct.xml");
0
ответ дан 29 November 2019 в 22:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: