小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

C# CSV文件操作通用類

 天選小丑 2024-09-08 發(fā)布于廣西

摘要


在C#中,我們可以使用System.IO命名空間提供的類和方法來操作CSV(逗號(hào)分隔值)文件。以下是一個(gè)通用的CSV文件操作類的示例代碼,詳細(xì)說明了如何實(shí)現(xiàn)常見的讀取和寫入CSV文件的功能。

正文


CSV文件操作通用類

public class CsvFile{ private string filePath; private char delimiter;
public CsvFile(string filePath, char delimiter = ',') { this.filePath = filePath; this.delimiter = delimiter; }
public List<string[]> ReadAll(System.Text.Encoding encoding) { List<string[]> data = new List<string[]>();
try { using (StreamReader reader = new StreamReader(filePath, encoding) { while (!reader.EndOfStream) { string line = reader.ReadLine(); string[] values = line.Split(delimiter); data.Add(values); } } } catch (Exception ex) { Console.WriteLine('Error: ' + ex.Message); }
return data; }
public void WriteAll(List<string[]> data) { try { using (StreamWriter writer = new StreamWriter(filePath)) { foreach (string[] values in data) { string line = string.Join(delimiter.ToString(), values); writer.WriteLine(line); } } } catch (Exception ex) { Console.WriteLine('Error: ' + ex.Message); } }}

上述代碼定義了一個(gè)CsvFile類,用于讀取和寫入CSV文件。構(gòu)造函數(shù)接受文件路徑和可選的分隔符參數(shù),默認(rèn)為逗號(hào)。ReadAll方法讀取整個(gè)CSV文件并返回一個(gè)包含每行數(shù)據(jù)的List<string[]>對(duì)象。WriteAll方法將給定的數(shù)據(jù)寫入CSV文件。

使用CSV文件操作通用類

static void Main(string[] args){    Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);    string filePath = 'D:\\BaiduSyncdisk\\11Test\\測(cè)試導(dǎo)入數(shù)據(jù).csv';    CsvFile csvFile = new CsvFile(filePath);
// 讀取CSV文件,中文時(shí)可能需要用到GB2312 List<string[]> data = csvFile.ReadAll(Encoding.GetEncoding('GB2312')); foreach (string[] values in data) { Console.WriteLine(string.Join(', ', values)); }
filePath = 'D:\\BaiduSyncdisk\\11Test\\test.csv'; csvFile = new CsvFile(filePath); // 寫入CSV文件 List<string[]> newData = new List<string[]>{ new string[] { 'John', 'Doe', 'john.doe@example.com' }, new string[] { 'Jane', 'Smith', 'jane.smith@example.com' }}; csvFile.WriteAll(newData);}

如是需要用Gb2312在Core下需要先安裝以下包

圖片

上述代碼演示了如何使用CsvFile類來讀取和寫入CSV文件。首先,我們創(chuàng)建一個(gè)CsvFile對(duì)象并指定CSV文件的路徑。然后,我們使用ReadAll方法讀取CSV文件的內(nèi)容,并通過WriteLine方法打印出每行數(shù)據(jù)。接下來,我們創(chuàng)建一個(gè)新的數(shù)據(jù)列表newData,并使用WriteAll方法將其寫入CSV文件。

圖片

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約