This code is for parsing any XML file.(i.e . reading its nodes)
public class mainparser { public static int countele=0; public static void parsexml(string filename) { int starttick; int endtick; int i; XmlTextReader rdr; StringBuilder sb; SimpleElement se = new SimpleElement("junk"); SimpleDOMParser sdp; sb = new StringBuilder(); try { starttick = System.Environment.TickCount; for (i = 0; i < 10; i++) { // OpenFileDialog ope = new OpenFileDialog(); // if (ope.ShowDialog() == DialogResult.OK) //{
rdr = new XmlTextReader(filename); sdp = new SimpleDOMParser(); se = sdp.parse(rdr); rdr.Close(); //} //else //{ // MessageBox.Show("Sorry File cant be open."); //} } endtick = System.Environment.TickCount; sb = new StringBuilder(); printTree(se, sb, 0); MessageBox.Show(sb.ToString()); TextWriter tw = new StreamWriter(filename+".csv"); tw.Write(sb.ToString()); tw.Close(); System.Diagnostics.Debug.WriteLine(sb.ToString()); System.Diagnostics.Debug.WriteLine(endtick - starttick); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); } } private static void printTree(SimpleElement se, StringBuilder sb, int depth) { sb.Append(se.TagName+","); //foreach (string attName in se.Attributes.Keys) //{ // sb.Append(" " + attName + "=" + "\"" + se.Attribute(attName) + "\""); //} //if (countele == 0) //{ //} //else //{ sb.Append(se.Text.Trim() + ","); //} if (se.ChildElements.Count > 0) { countele += 1; //sb.Append(System.Environment.NewLine); depth += 1; foreach (SimpleElement ch in se.ChildElements) { printTree(ch, sb, depth); } depth -= 1; } else { //sb.Append(System.Environment.NewLine); } }
|
No responses found. Be the first to respond and make money from revenue sharing program.
|