Если вы пишете в строку, то кодировка будет переопределена UTF-16.Строки всегда Unicode, то есть UTF-16.Не существует способа написать любую другую кодировку, используя метод writeToString
.Если вы пишете в файл, то ваша кодировка вступит в силу.
XmlWriterSettings xmlSetting = new XmlWriterSettings();
XmlWriter xmlWriter;
Str res;
xmlSetting.encoding ('UTF-8');
xmlWriter = XMLWriter::newFile(@"C:\TEMP\test.xml", xmlSetting);
xmlWriter.writeStartDocument();
xmlWriter.writeStartElement('root');
xmlWriter.writeEndElement();
xmlWriter.writeEndDocument();
xmlWriter.flush();