private static void WriteTreeNodeAsHtml(XmlWriter writer, DataNode node) { writer.WriteStartElement("li"); DataKey key = node as DataKey; if (key != null) { string towrite = String.Format("{0} +", key.Name); writer.WriteElementString("span", towrite); foreach (DataNode n in key.SubNodes) { writer.WriteStartElement("ul"); WriteTreeNodeAsHtml(writer, n); writer.WriteEndElement(); } } else { if (node.Value is byte[]) { string hexdump = GeneralUtils.BuildHexDump(16, node.Value); writer.WriteElementString("span", node.Name + " = "); writer.WriteElementString("pre", hexdump); } else { writer.WriteElementString("span", String.Format("{0} = {1}", node.Name, node.Value)); } } writer.WriteEndElement(); }
private static void WriteNodeToTreeString(TextWriter writer, string link, DataNode node) { DataKey key = node as DataKey; if (key != null) { string towrite = "+ " + key.Name; writer.WriteLine("{0}{1}", link, towrite); foreach (DataNode n in key.SubNodes) { WriteNodeToTreeString(writer, new String(' ', link.Length) + "|" + new String('-', towrite.Length - 1), n); } } else { if (node.Value is byte[]) { string hexdump = GeneralUtils.BuildHexDump(16, node.Value); writer.WriteLine("{0}> {1} = ", link, node.Name); writer.WriteLine(hexdump); } else { writer.WriteLine("{0}> {1} = {2}", link, node.Name, node.Value); } } }
private static void WriteBinaryPacketAsHtml(XmlWriter writer, DataFrame frame, ColorValue c) { writer.WriteStartElement("pre"); writer.WriteAttributeString("style", String.Format("background-color:#{0:X02}{1:X02}{2:X02}", c.R, c.G, c.B)); writer.WriteString(GeneralUtils.BuildHexDump(16, frame.ToArray())); writer.WriteEndElement(); }
/// <summary> /// Convert a packet to a hex string format /// </summary> /// <param name="p">The packet to convert</param> /// <returns>The converted string</returns> public static string ConvertBinaryPacketToString(DataFrame p) { using (TextWriter writer = new StringWriter()) { writer.WriteLine(GeneralUtils.BuildHexDump(16, p.ToArray())); writer.WriteLine(); return(writer.ToString()); } }
private static void WritePacketsHex(Stream stm, LogPacket[] ps) { using (TextWriter writer = new StreamWriter(stm, Encoding.UTF8)) { foreach (LogPacket p in ps) { writer.WriteLine(GetHeader(p)); writer.WriteLine(GeneralUtils.BuildHexDump(16, p.Frame.ToArray())); writer.WriteLine(); } } }