Ниже приведен код для преобразования XML-файла в файл формата UTF-8, он работает как исключение, но проблема заключается в том, что заголовок объединяется с основным текстом, а не записывается в отдельной строке. Мне нужно utf8 в отдельной строке, но file.writealltext не будет принимать более 3 аргументов / параметров. Любая помощь приветствуется.
string path = @"samplefile.xml";
string path_new = @"samplefile_new.xml";
Encoding utf8 = new UTF8Encoding(false);
Encoding ansi = Encoding.GetEncoding(1252);
string xml = File.ReadAllText(path, ansi);
XDocument xmlDoc = XDocument.Parse(xml);
File.WriteAllText(
path_new,
@"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""true"">" + xmlDoc.ToString(),
utf8
);