2016-11-09 33 views
-2

我有一些文字,看起來像這樣:如何查看這些數字? C#

Number:12345678 
Status:FAIL 
Date:10/26/2016 4:33 PM 
Number:11111117  
Status:FAIL 
Date:10/26/2016 4:52 PM 
Number:11111115 
Status:PASS 
Date:10/26/2016 4:58 PM 

有沒有一種方法來檢查具有最新日期的號,如果是PASS返回一個消息以「1」,如果是失敗,返回消息框與「0」?

我開始像這樣,但我卡住了。我不知道如何比較texttime和datetime.now的所有日期時間。文字不會保留,數字和日期不斷更新。

static void Main(string[] args) 
    { 
     List<string> find = new List<string>(); 
     string datetime; 
     using (StreamReader file = new StreamReader("C:\\Temp\\PASS-FAIL STATUS.txt")) 
     { 
      while ((datetime = file.ReadLine()) != null) 
      { 
       if (datetime.Contains("Date")) 
       { 
        find.Add(datetime); 
       } 
      } 
     } 

謝謝。

+2

歡迎。你應該閱讀[問],然後回來並且[編輯]你的問題,以更清楚地解釋你問的問題,並且包括你自己努力解決問題。您還應該爲您編碼的語言添加標籤,因爲任何答案都明顯需要該信息。 –

+2

通常在StackOverflow編碼器只願意幫助你,如果你表明你已經嘗試過。 – boboquack

回答

0

例如:

static void Main(string[] args) 
     { 
      List<DataModel> models = new List<DataModel>(); 
      var lines = File.ReadLines("C:\\Temp\\PASS-FAIL STATUS.txt").ToArray(); 

      for(int i = 0; i < lines.Count(); i = i + 3) 
      { 
       var number = lines[i].Replace("Number:", ""); 
       var status = lines[i+1].Replace("Status:", ""); 
       var dateTime = lines[i+2].Replace("Date:", ""); 

       models.Add(new DataModel { 
        Number = number, 
        Status = status, 
        Date = DateTime.ParseExact(dateTime, "M/d/yyyy h:m tt", System.Globalization.CultureInfo.InvariantCulture) 
       }); 
      } 

      Console.ReadKey(); 
     } 

     public class DataModel 
     { 
      public string Number { get; set; } 
      public string Status { get; set; } 
      public DateTime Date { get; set; } 
     } 
+0

謝謝先生,這真的很有幫助! –