XmlWriter.WriteAttributeString () не преобразуется в UTF-8 - PullRequest
0 голосов
/ 27 января 2019

У меня есть следующий код для создания файла XML.Почему он не выполняет преобразование UTF-8 в передаваемой строке?

using System.IO;
using System.Text;
using System.Xml;

namespace TestXmlWriter
{
    class Program
    {
        private static readonly Encoding utf8NoBOM = new UTF8Encoding(false);

        static void Main(string[] args)
        {
            Stream stream = new FileStream("c:\\temp\\test.xml", FileMode.Create, FileAccess.ReadWrite);
            XmlWriter xmlWriter = new XmlTextWriter(stream, utf8NoBOM);
            xmlWriter.WriteStartDocument();

            xmlWriter.WriteStartElement("bear");
            xmlWriter.WriteAttributeString("version", "CONSULTOR_TÉCNICO");

            xmlWriter.WriteEndElement();
            xmlWriter.WriteEndDocument();
            xmlWriter.Flush();
            stream.Close();
        }
    }
}

Вывод:

<?xml version="1.0" encoding="utf-8"?><bear version="CONSULTOR_TÉCNICO" />
...