How Can I remove Header an XML file in C# using XMLDocument?
I have code as below,
XmlDocument xmlDoc= new XmlDocument();
XML document loaded has First line <?xml version=”1.0″ encoding=”UTF-8″?>
I don’t want this line in my file, How I can remove this xml version information line from the xml doc.
There are various ways we can remove the version information of the xml file from C#.
XmlDocument xmlDoc = new XmlDocument();
foreach (XmlNode n in xmlDoc)
if (n.NodeType == XmlNodeType.XmlDeclaration)
Above if condition can be changed as below to remove the xml header information from an xml file.
if we blindly remove the first child from xml without an if check , it may remove xml root itself if xml version information not present in the xml.
if (xmlDoc.FirstChild.NodeType == XmlNodeType.XmlDeclaration)
//Remove the xml version,if it is the first child of the doc.
If xmldoc is made in string format,we can simply remove the xml version info from the xml file using the string.Replace statement.
string xmlDoc = stringXmlDoc.Replace(““, “”);
If we are writing an xml document and don’t want to write xml declaration in the xml doc then use the ConformanceLevel and OmitXmlDeclaration properties.
writer.Settings = new XmlWriterSettings();
writer.Settings.ConformanceLevel = ConformanceLevel.Fragment;
writer.Settings.OmitXmlDeclaration = true;
You must be logged in to reply to this topic.
© Copywright 2017 Dotnetstuffs All Rights Reserved