使用「CsvHelper」讀取、寫入 CSV 檔案

一、開發環境

  • 整合開發環境:Visual Studio 2019
  • 語言:C#
  • .net framework:4.6.2

二、Nuget

圖、CsvHelper 套件。

三、專案結構介紹

圖、建立 Test 資料夾 > 建立 Read.csv,內容如下

圖、建立 Vm 資料夾 > 建立 Test.cs,貼上 Test類別 原始碼

原始碼

public class Test
{
    public string a { set; get; }

    public string b { set; get; }
}

四、讀取 CSV 檔案

圖、開啟 Program.cs 程式,輸入範例程式碼

範例程式碼 C#

using (var reader = new StreamReader("Test\\Read.csv"))
using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
{
    var records = csv.GetRecords<Test>().ToList();
    foreach (var r in records)
    {
        Console.WriteLine($"第{records.IndexOf(r) + 1}列,  a={r.a}、b={r.b}");
    }
}

圖、執行結果

五、 寫入 CSV 檔案

圖、開啟 Program.cs 程式,輸入範例程式碼

範例程式碼 C#

using (var fs = new FileStream("Test\\Create.csv", FileMode.OpenOrCreate))
using (var sw = new StreamWriter(fs))
using (var csv = new CsvWriter(sw, CultureInfo.InvariantCulture))
{
    var data = new List<Test>() {
        new Test { a="a1", b="a1" },
        new Test { a="b1", b="b1" },
    };
    csv.WriteRecords(data);
}

圖、執行結果

六、相關連結

  1. 使用「Visual Studio 2019」建置 主控台 Console 應用程式
  2. 在「Visual Studio 2019 」使用 「NuGet」 安裝第三方套件

七、參考

  1. CsvHelper

留言

這個網誌中的熱門文章

使用「LINE Messaging API」發送 line 訊息

使用「NLog」來記錄應用程式的大小事吧

如何傳送訊息至「Teams」的 Channel

「Katalon Recorder」簡化測試腳本撰寫的工具

「Selenium」前端 UI 自動化測試、爬蟲程式 最佳利器

使用 Visual Studio 2019 實作「RESTful API」

好用的資料庫管理工具「SQL Server 資料庫專案」

「Chrome Headless」隱藏瀏覽器的介面,讓爬蟲程式偷偷的執行

使用「Visual Studio 2019」建置一個有 Mvc 和 Web Api 架構的網站