2014-09-02 104 views
0

我试图从我的应用程序中读取BLG文件。我可以从我的应用程序读取CSV文件,但我也想添加另一个表单来将BLG文件转换为CSV。不幸的是,我得到一个错误,说它无法找到文件。 这里是代码:Relog找不到文件

object command; 
    string dosyaAdi; 

    private void btnCevir_Click(object sender, EventArgs e) 
    { 
     try 
     { 
      dosyaAdi = openFileDialog1.FileName; 
      command = "relog "+dosyaAdi+".blg -f CSV -o "+dosyaAdi+".csv"; 
       System.Diagnostics.ProcessStartInfo procStartInfo = 
       new System.Diagnostics.ProcessStartInfo("cmd", "/c " + command); 
       procStartInfo.RedirectStandardOutput = true; 
       procStartInfo.UseShellExecute = false; 
       procStartInfo.CreateNoWindow = true; 
       System.Diagnostics.Process proc = new System.Diagnostics.Process(); 
       proc.StartInfo = procStartInfo; 
       proc.Start(); 
       string result = proc.StandardOutput.ReadToEnd(); 
       MessageBox.Show(result); 
     } 
     catch (Exception objException) 
     { 

     } 
    } 

谢谢你的帮助。

+0

你可以发布更多细节?什么是确切的错误? '命令'的价值是什么? – MeanGreen 2014-09-02 11:35:45

+0

@MeanGreen确切的错误是,在我得到BLG文件后,我点击一个按钮来转换它,但它说它无法找到指定的文件。 – 2014-09-02 11:42:10

+0

这可能意味着代码不在您期望的位置。错误之前'命令'的价值是什么? – MeanGreen 2014-09-02 11:50:54

回答

1

我只使用Tx(LINQ到日志和跟踪)的解析器,它是一个支持多种跟踪格式,包括blg,csv,tsv的C#库。

这是用法:

var playback = new Playback(); 

playback.AddPerfCounterTraces(@"C:\bin\Release\Net40\BasicPerfCounters.blg"); 

playback 
    .GetObservable<PerformanceSample>() 
    .Dump(); 

playback.Run(); 

您还可以找到例子来说明如何使用它的Tx样品在LINQpad:

enter image description here