从命令行解析输出的库/框架(C#)?

时间:2009-07-23 18:27:11

标签: c# parsing command-line

我的申请需要:

  1. 运行外部命令行应用程序
  2. 执行期间捕获标准输出/错误
  3. 解析输出/错误中的数据,并将其用于主应用程序中的状态显示
  4. 虽然做起来并不难,但在我看来这是一个非常常见的任务,我想知道是否有一个库或框架在C#中简化了这个任务。

    编辑:这是我正在寻找的那种“Mono.Options灵感”的例子:

    ProcessWithParser proc= new ProcessWithParser(filename, arguments);
    proc.AddWatch("percent=??", v => this.percent = Convert.ToInt32(v));
    proc.Start();
    

    在上面的“概念”中,它会在输出中找到“percent =”,将后两个字符作为字符串读取,并使用此字符串作为参数调用委托。

1 个答案:

答案 0 :(得分:0)

基类库已经为此提供了工具 - 没有太多框架真正需要添加到它。

流程standard input and output streams is trivial的重定向。 RegEx和使用流也使得解析相当容易。

该框架几乎完成了任何(灵活的)自定义库在其他语言中通常会做的事情。