Tengo un problema al escribir caracteres noruegos en un archivo XML usando C#. Tengo una variable de cadena que contiene texto noruego (con letras como æøå).Escribiendo archivos XML usando XmlTextWriter con codificación ISO-8859-1
estoy escribiendo el código XML utilizando un XmlTextWriter, escribir el contenido a un MemoryStream así:
MemoryStream stream = new MemoryStream();
XmlTextWriter xmlTextWriter = new XmlTextWriter(stream, Encoding.GetEncoding("ISO-8859-1"));
xmlTextWriter.Formatting = Formatting.Indented;
xmlTextWriter.WriteStartDocument(); //Start doc
Luego añadir mi texto noruega como esto:
xmlTextWriter.WriteCData(myNorwegianText);
Entonces escribo el archivo en el disco como este:
FileStream myFile = new FileStream(myPath, FileMode.Create);
StreamWriter sw = new StreamWriter(myFile);
stream.Position = 0;
StreamReader sr = new StreamReader(stream);
string content = sr.ReadToEnd();
sw.Write(content);
sw.Flush();
myFile.Flush();
myFile.Close();
Ahora el problema es que en el archivo de este, todos los Norw los personajes egipcios se ven divertidos.
Probablemente estoy haciendo lo anterior de alguna manera estúpida. ¿Alguna sugerencia sobre cómo solucionarlo?
Recuerde que también puede utilizar la más genérica codificación UTF-16 para escribir caracteres noruegos . –