private void WriteNode(StructuredText node) { WriteIndent(); _writer.Write(node.Name); _writer.WriteLine(" {"); _indent += INDENT_UNIT; foreach (object ch in node.Children) { StructuredText.Entry e = ch as StructuredText.Entry; if (e != null) //entry { WriteIndent(); _writer.Write(e.name); _writer.Write('='); _writer.WriteLine(e.value); } else //child node { WriteNode((StructuredText)ch); } } _indent -= INDENT_UNIT; WriteIndent(); _writer.WriteLine("}"); }
private void WriteNode(StructuredText node) { _writer.WriteStartElement(node.Name); // first, output StructuredText.Entry as a XML attribute. List <StructuredText> childNodes = new List <StructuredText>(); foreach (object ch in node.Children) { StructuredText.Entry e = ch as StructuredText.Entry; if (e != null) //entry { _writer.WriteAttributeString(e.name, e.value); } else //child node { childNodes.Add((StructuredText)ch); } } // second, output StructuredText as a XML tag. foreach (StructuredText ch in childNodes) { WriteNode(ch); } _writer.WriteEndElement(); }
private void WriteNode(StructuredText node) { _writer.WriteStartElement(node.Name); foreach (object ch in node.Children) { StructuredText.Entry e = ch as StructuredText.Entry; if (e != null) //entry { _writer.WriteAttributeString(e.name, e.value); } else //child node { WriteNode((StructuredText)ch); } } _writer.WriteEndElement(); }