J'utilise l'extrait de code ci-dessous pour télécharger la réponse HTTP dans un fichier local. Parfois, le contenu de mon url est multilingue (chinois, japonais, thaïlandais, etc.). J'utilise l'en-tête ContentEncoding pour spécifier que mon contenu est en encodage UTF-8, mais cela n'a aucun effet dans mon fichier de sortie local qui est généré en ASCII. De ce fait, les données multilingues sont corrompues. Comment faire ?
using (var webClient = new WebClient())
{
webClient.Credentials = CredentialCache.DefaultCredentials;
webClient.Headers.Add(HttpRequestHeader.UserAgent, "Mozilla/4.0");
webClient.Headers.Add(HttpRequestHeader.ContentEncoding, "utf-8");
webClient.DownloadFile(url, @"c:\temp\tempfile.htm");
}