簡體   English   中英

如何使用 C# 將一列的所有行連接到一個字段中

[英]how to concatenate all rows of a column into a single field Using C#

我想知道如何使用 C# 執行此操作:我有一個包含多列的 CSV 文件,如下所示:

在此處輸入圖片說明

我想連接第一列的所有行的結果:Name = NDECINT, NDEC, NFAC, ORIGIN .....

此解決方案適用於 SSIS。

  1. 添加一個名為 concat 的變量,設置為等於“”
  2. 使用 SSIS 讀取文件。
  3. 添加腳本組件
  4. 傳入 A 行並添加變量
  5. 將變量設置為 concat += RowA + ","

完成后,您將在需要刪除的變量上多出一個“,”。

使用表達式。

concat = left(concat, len(concat)-1)

你說的都是c#。 這是通過 Core 5 完成的。

var yourData = File.ReadAllLines("yourFile.csv")
               .Skip(1)
               .Select(x => x.Split(','))
               .Select(x => new
                            {
                                Name = x[0] //only working with Name column
                                ,Type = int.Parse(x[1]) //Only added for reference for handling more columns
                            });

string namesJoined = string.Join(',', yourData.Select(x => x.Name));

這是非常基本的代碼,並沒有處理可能在 csv 中的瘋狂事情,例如名稱中的逗號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM