Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/64: Рейтинг темы: голосов - 64, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 04.09.2015
Сообщений: 2

Как изменить кодировку XML-файла?

16.09.2015, 13:24. Показов 12004. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Подскажите, как изменить кодировку xml-файла
Этот код работает правильно, но только если я в самом файле вручную изменю кодировку с utf-8 на windows-1251, однако нужно, чтобы код работал именно с utf-8

Help!
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
XmlTextReader xmlReader1 = new XmlTextReader(file1);
            xmlReader1.Encoding = "678";
            xmlReader1.WhitespaceHandling = WhitespaceHandling.None;
            XmlTextReader xmlReader2 = new XmlTextReader(file2);
            xmlReader2.WhitespaceHandling = WhitespaceHandling.None;
            int fullcount = 0;
            var differentList = new List<string>();
 
 
            while (xmlReader1.Read() && xmlReader2.Read())
            {                
                if (xmlReader1.NodeType == XmlNodeType.Element & xmlReader1.AttributeCount > 0)
                {
                    fullcount++;
                    if (xmlReader1.GetAttribute(0) != xmlReader2.GetAttribute(0))
                    {
                        differentList.Add(xmlReader1.Name);
                    }                    
                }
                        
            }
            Console.WriteLine("Проверено " + fullcount + " элементов.");
            Console.WriteLine("Список несовпадающих элементов:");
            foreach(string dif in differentList)
            {
                Console.WriteLine(dif);
            }
            Console.ReadLine();
Добавлено через 1 минуту
пример xml-файла
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="utf-8"?>
<ТестовыеДанные>
  <Фамилия value="Петров" />
  <Имя value="Иван" />
  <Отчество value="Иванович" />
  <Пол value="Женский" />
  <ДатаРождения value="01.01.1996" />
  <УдостоверениеЛичности>
    <Тип value="Паспорт РФ" />
    <Номер value="7748321242" />
  </УдостоверениеЛичности>
  <АдресРегистрации>
    <Регион value="Москва" />
    <Район value="Воскресенское" />
  </АдресРегистрации>
  <Образование value="Высшее профессиональное" />
</ТестовыеДанные>
Добавлено через 8 минут
а вот и дельный совет для меня
C#
1
2
3
4
5
6
7
8
9
FileStream stream1 = new FileStream(file1, FileMode.Open, FileAccess.Read);
            StreamReader reader1 = new StreamReader(stream1, Encoding.GetEncoding(1251));
            XmlTextReader xmlReader1 = new XmlTextReader(reader1);            
            xmlReader1.WhitespaceHandling = WhitespaceHandling.None;
 
            FileStream stream2 = new FileStream(file2, FileMode.Open, FileAccess.Read);
            StreamReader reader2 = new StreamReader(stream2, Encoding.GetEncoding(1251));
            XmlTextReader xmlReader2 = new XmlTextReader(reader2);
            xmlReader2.WhitespaceHandling = WhitespaceHandling.None;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.09.2015, 13:24
Ответы с готовыми решениями:

Как изменить кодировку текста в StreamWriter
Создаю файл: StreamWriter streamWriter = File.CreateText(somePath +&quot;.html&quot;); streamWriter.WriteLine(&quot;&lt;html&gt;&quot;); ...

Задать кодировку чтения у xml файла
Такая проблема xml файл в кодировке UTF-7. Читаю его с помощью XmlDocument doc = new XmlDocument(); ...

Как узнать кодировку xml-файла
Добрый день! Имею файлы XML. Кодировка по умолчанию, явно не описана. Один из файлов оказался с кодировкой win 1251 (умные люди сказали,...

1
29 / 24 / 8
Регистрация: 25.10.2009
Сообщений: 265
16.09.2015, 16:55
Можно чуточку проще и универсальнее:
C#
1
StreamReader reader1 = new StreamReader(stream1, true);
Здесь, true означает, что нужно вычислить кодировку автоматически. В Вашем случае, если вдруг прилетит файл в той же utf-8, то всё сломается.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.09.2015, 16:55
Помогаю со студенческими работами здесь

Как изменить кодировку файла?
Добрый день. есть файл - выгрузка в формате .csv с кодировкой usc-2 little endian, я это файлик загружаю в MySQL - там кодировка UTF8,...

Как изменить кодировку DOC-файла?
Здравствуйте уважаемые гуру!!! Подскажите пожалуйста чайнику как сменить кодировку файла MS Word с Въетнамской (Windows) на Кириллицу (DOS)...

Как изменить кодировку файла из UTF-8 в Unicode?
Как с помощью Python написать программу, которая сохраняет файл в кодировке &quot;Unicode&quot;? &lt;!--как в картинке--&gt; ''' Просто, у...

Как изменить кодировку при открытии файла
Пишу блокнот Открываю txt файл а у меня квадратики(( как изменить кодировку?? помогите VB 10 Pro

Как можно изменить кодировку .txt файла перед его сохранением?
Как можно изменить кодировку .txt файла перед его сохранением? Например, есть a:textfile, я все как надо расписал и закрыл его. Можно ли...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru