我正在使用XmlWriter和XmlWriterSettings将XML文件写入磁盘。但是,正在解析XML文件的系统提示编码。
<?xml version="1.0" encoding="utf-8"?>
它想要的是:
<?xml version="1.0" ?>
如果我尝试OmitXmlDeclaration = true,那么我根本不会得到xml行。
string destinationName = "C:\\temp\\file.xml";
string strClassification = "None";
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
using (XmlWriter writer = XmlWriter.Create(destinationName, settings))
{
writer.WriteStartDocument();
writer.WriteStartElement("ChunkData");
writer.WriteElementString("Classification", strClassification);
writer.WriteEndElement();
}
最佳答案
刚遇到这个-
XmlWriterSettings()
,并将XmlTextWriter()'s Formatting
字段用于缩进。 null
作为Encoding
的XmlTextWriter's ctor
参数以下代码将创建您要查找的输出:
<?xml version="1.0" ?>
var w = new XmlTextWriter(filename, null);
w.Formatting = Formatting.Indented;
w.WriteStartDocument();
w.WriteStartElement("ChunkData");
w.WriteEndDocument();
w.Close();
.Close()
有效地创建了文件-using
和Create()
方法也将起作用。