.NET 2.x Парсинг xml файла в кодировке ISO-8859-1 - C#
Формулировка задачи:
Всем привет. Уже второй час бьюсь никак не могу нормально спарсить xml-файл. Кодировка xml файла - ISO-8859-1.
При парсинге русские буквы выводятся вот так:
Код парсинга
var doc = new XmlDocument();
{
doc.Load(put);
foreach (XmlNode node in doc.SelectNodes("usb_devices_list"))
{
foreach (XmlNode node2 in node.SelectNodes("item"))
{
foreach (XmlNode child in node2.ChildNodes)
{
list.Add(child.InnerText);
}
}
}
}Решение задачи: «.NET 2.x Парсинг xml файла в кодировке ISO-8859-1»
textual
Листинг программы
// Вариант 1. Делаем перед загрузкой
// Не помешает добавить проверку что замена уже была сделана чтобы не делать лишнуюю работу
string xml = File.ReadAllText("log.xml", Encoding.Default);
xml = xml.Replace("<?xml version="1.0" encoding="ISO-8859-1" ?>", "<?xml version="1.0" encoding="" + Encoding.Default.WebName + "" ?>");
File.WriteAllText("log.xml", xml, Encoding.Default);