Je dois écrire un flux de réponses dans un fichier. Le flux contient une page encodée (iso-8859-1).
Voici mon code :
...
using (TextWriter writer = new StreamWriter(tmpFilePath))
{
using (TextReader reader = new StreamReader(answer, Encoding.GetEncoding("ISO-8859-1")))
{
string line = "";
while ((line = reader.ReadLine()) != null)
{
// try to decode
string decoded_line = decode(line);
writer.WriteLine(decoded_line);
}
}
}
...
string decode(string message)
{
string result = "";
Encoding iso = Encoding.GetEncoding("iso-8859-1");
Encoding utf8 = Encoding.UTF8;
byte[] isoBytes = iso.GetBytes(message);
byte[] utf8Bytes = Encoding.Convert(iso, utf8, isoBytes);
result = utf8.GetString(utf8Bytes);
return result;
}
Le problème est que decode() ne fonctionne pas
Comment convertir correctement iso-8859-1 en utf8 ?
MISE À JOUR
Je me fie à fiddler pour obtenir le type de contenu :