Logging 寻找自定义/聊天日志分析器

Logging 寻找自定义/聊天日志分析器,logging,analyzer,Logging,Analyzer,我有一个flash聊天程序,可以输出聊天日志,如果不进行处理,几乎无法查看这些日志。我花了相当长的时间寻找一个windows程序(最好是),它将获取以下类型的数据并以人类可读的格式输出: <r>ROOMNAME</r><f>USERID-From</f><to>USERID-to</to><w>WHISPER-false</w><dt>1.340758262E9</dt><

我有一个flash聊天程序,可以输出聊天日志,如果不进行处理,几乎无法查看这些日志。我花了相当长的时间寻找一个windows程序(最好是),它将获取以下类型的数据并以人类可读的格式输出:

<r>ROOMNAME</r><f>USERID-From</f><to>USERID-to</to><w>WHISPER-false</w><dt>1.340758262E9</dt><c><![CDATA[how are you?]]></c></m><m>
ROOMNAMEUSERID-FromUSERID-toWHISPER-false1.340758262E9
以下类型的数据,并以人类可读的格式输出

我认为这有点主观,什么是“人类可读的”。SGML/XML通常就是这样设计的。但这里有一些建议:

  • 他有一台漂亮的打印机
  • XPath是从XML文件中提取特定内容的一种非常好的方法。使用您喜爱的语言的XPath支持(JAXP for Java、libxml for python等)
  • 一些Java源代码的漂亮打印示例,来自:
下面是一个例子:

namespace xmllint
{
    using System;
    using System.Xml;
    using System.Xml.Linq;

    class Program
    {
        static void Main(string[] args)
        {
            var xml = XDocument.Parse(Console.In.ReadToEnd());
            var output = new XmlTextWriter(Console.Out);
            output.Indentation = 4;
            output.Formatting = Formatting.Indented;
            xml.WriteTo(output);
            output.Flush();
        }
    }
}

顺便说一句,如果还不明显,“
dt
”标记包含自历元起秒数的浮点表示

你有没有试过向聊天程序开发者要一个?如果这个程序不广为人知,最简单的解决方案可能是自己编写一个小型解析器。