Intro
最近發現 csv 檔案在很多情況下都在使用,而且經過大致瞭解,csv 格式簡單,相比 excel 檔案要小很多,讀取也很是方便,而且也很通用,微軟的 ml.net 的示例專案 用來訓練模型的資料也是使用的 csv 來儲存的,最近又發現使用 jmeter 來測試網站的效能,也可以用 csv 來引數化請求,csv 檔案操作的重要性由此可見。
此前做了一個 NPOI 的擴充套件 WeihanLi.Npoi,支援.net45 以及 .netstandard2.0及以上,主要是對 excel 檔案的操作,於是打算再增加一些對csv的操作。
csv 操作API
透過上面的方法,即可方便的將一個 IEnumerable 物件或者是DataTable 匯出為 csv 檔案或者或者 csv 檔案的位元組陣列,也可將 csv 檔案轉換為 DataTable 或者 List 物件。
並且我於昨天優化了 csv 轉成 list 物件的操作,並且支援了簡單型別(比如int/long等 )的直接匯出
Sample
更多詳情可參考示例:https://github.com/WeihanLi/WeihanLi.Npoi/blob/dev/samples/DotNetCoreSample/Program.cs
More
匯入匯出的時候如果根據需要配置要匯出的屬性以及順序,和之前匯出 Excel 相似,需要配置一下 ,目前和 Excel 匯入匯出共享配置,配置方式支援 Attribute 或者 FluentAPI 兩種方式(不支援Excel的一些配置如Author,title、subject以及sheet等資訊),示例如下:
更多配置詳情參考:https://github.com/WeihanLi/WeihanLi.Npoi#define-custom-mapping-and-settings
End
如果有 csv 檔案操作的需求,可以嘗試使用它,如果不能滿足你的需求歡迎來給我提 issue
原文地址:https://www.cnblogs.com/weihanli/p/operate-csv-files-with-weihanli_npoi.html