using System; using System.IO; using System.Collections.Generic; using System.Text; using System.Xml; namespace fmtxml { class EntireFormat { public EntireFormat(string mxml) { XmlDocument xmldoc = new XmlDocument(); XmlElement top = xmldoc.CreateElement("PlantFormat"); xmldoc.AppendChild(top); try { XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreWhitespace = true; StreamReader strrdr = new StreamReader(mxml); XmlTextReader rdr = new XmlTextReader(strrdr); using (rdr) { rdr.MoveToContent(); XmlNode fmt = xmldoc.ReadNode(rdr); top.AppendChild(fmt); } rdr.Close(); // load page xml string pagename = mxml.Substring(0, mxml.Length - 5) + "p.xml"; using (XmlReader reader = XmlReader.Create(pagename, settings)) { reader.MoveToContent(); XmlNode pag = xmldoc.ReadNode(reader); top.AppendChild(pag); } string docname = mxml.Substring(0, mxml.Length - 5) + "d.xml"; using (XmlReader reader = XmlReader.Create(docname, settings)) { reader.MoveToContent(); XmlNode doc = xmldoc.ReadNode(reader); top.AppendChild(doc); } XmlWriterSettings settingsout = new XmlWriterSettings(); settingsout.Encoding = Encoding.Unicode; string outname = "e:\\fmtall\\" + mxml.Substring(mxml.IndexOf("\\")+1,mxml.Length - 13) + "all.xml"; XmlWriter xmlwrite = XmlWriter.Create(outname,settingsout); xmldoc.WriteContentTo(xmlwrite); xmlwrite.Close(); } catch (Exception ex) { Console.WriteLine("Error on merge, format = {0}, msg = {1}", mxml, ex.Message); } } } }