2016-09-27 18 views
-1

我有一個文本文件是這樣的:C#如何計算文本文件的特定部分的總和?

IPen ID Datetime         Status 
48  Tuesday, September 27, 2016 14:17:23  OK 
48  Tuesday, September 27, 2016 14:17:26  NG 
48  Tuesday, September 27, 2016 14:17:30  OK 
48  Tuesday, September 27, 2016 14:17:47  NG 
48  Tuesday, September 27, 2016 14:17:50  OK 
48  Tuesday, September 27, 2016 14:17:53  OK 
48  Tuesday, September 27, 2016 14:17:57  OK 
48  Tuesday, September 27, 2016 14:18:00  OK 
48  Tuesday, September 27, 2016 14:18:03  OK 
48  Tuesday, September 27, 2016 14:18:06  NG 
48  Tuesday, September 27, 2016 14:18:10  OK 
48  Tuesday, September 27, 2016 14:18:13  NG 
48  Tuesday, September 27, 2016 14:18:17  NG 

我想數status多少是OK多少statusNG。 是否可以將lines.countlines.contains合併在一起或以其他方式組合? 感謝您的幫助和迴應。

+0

向我們展示您嘗試過的方式以及卡住的位置。 – MarioDS

+0

我很困惑我必須從什麼開始,對我有什麼建議? – yosafat

+0

你應該將你的文本文件轉換成csv文件,然後你可以做到這一點。 – Bharat

回答

6

以下是你是如何做到的。你應該關心你的文件格式如何穩定。如果你確定OK和NG總是大寫字母並且在行尾,那麼你可以這樣做。否則,你應該找到一組穩定的條件。

class Program 
{ 
    static void Main(string[] args) 
    { 
     var filePath = @"c:\temp\file.txt"; 
     var lines = File.ReadAllLines(filePath); 
     var oks = lines.Count(s => s.EndsWith("OK")); 
     var ngs = lines.Count(s => s.EndsWith("NG")); 
     Console.WriteLine("OKs: {0}, NGs {1}",oks,ngs); 
    } 
} 
+0

謝謝我的兄弟。是的,它完全是我需要的。感謝您的解決方案和共享 – yosafat

相關問題