從文本文件讀取記賬記錄,每行格式如 日期,類別,金額,備註,按日期降序顯示。
var records = File.ReadAllLines("account.txt")
.Select(line => line.Split(','))
.Where(parts => parts.Length >= 4 && DateTime.TryParse(parts[0], out _))
.OrderByDescending(parts => DateTime.Parse(parts[0]))
.Select(parts => new { Date = parts[0], Category = parts[1], Amount = decimal.Parse(parts[2]), Note = parts[3] })
.ToList();
// 綁定到 DataGridView 或迴圈輸出
dataGridView1.DataSource = records;
File.ReadAllLines:一次性讀取所有行(小文件適用),大文件改用 File.ReadLines 流式處理。Split(','):簡單分割,若字段含逗號需用 CSV 解析庫(如 CsvHelper)。OrderByDescending:LINQ 排序,需確保日期格式可被 DateTime.Parse 識別。try-catch 捕獲格式錯誤行。.Skip(pageSize * (page-1)).Take(pageSize)。Where 子句。EPPlus 或 NPOI。LINQ 讓文本數據處理變得極其簡潔,配合匿名類型或自定義類即可快速實現讀取、解析、排序、綁定全流程。