1
我有一個C#代碼中 我有一個包含客戶數據如下csv文件:CSV到XML使用LINQ
ClientNumber1,Name1, BenefitCode1, EffectiveDt1
ClientNumber1,Name1, BenefitCode2, EffectiveDt2
ClientNumber2,Name2, BenefitCode3, EffectiveDt3
在現在這個情況下,我希望輸出XML有複式同一客戶(例如,在我的CSV前兩行具有相同的客戶,但兩種不同的福利)內標籤Benefit
我的XML輸出應該像
<Member>
<Num>ClientNumber1<Num>
<Nm>Name1</Nm>
<Benefit>
<Bc>BenefitCode1</Bc>
<Dt>EffectiveDt1</Dt>
</Benefit>
<Benefit>
<Bc>BenefitCode2</Bc>
<Dt>EffectiveDt2</Dt>
</Benefit>
</Member>
<Member>
<Num>ClientNumber1<Num>
<Nm>Name2</Nm>
<Benefit>
<Bc>BenefitCode3</Bc>
<Dt>EffectiveDt3</Dt>
</Benefit>
</Member>
所以基本上,我在執行LINQ的時候,我也應該可以用ClientNum
來檢查它,如果我有相同的數字,那麼應該在同一個Member
標記中添加好處數據。
謝謝。
這跟文件eems像你需要反序列化csv字符串到數據結構,然後將其序列化到xml – Grundy
歡迎來到SO!向我們展示到目前爲止你已經嘗試過什麼,以及你有什麼具體問題,因爲SO不是'給我寫代碼'門戶。 –
那麼目前我已經嘗試了下面的代碼,這個工程,但我需要將利益數據聚合成單個標籤。
String [] File1 = File.ReadAllLines(@「C:\ Desktop \ test.csv」); String xml =「」; 的XElement頂部=新的XElement( 「客戶」, 從File1中 項目讓田= items.Split( '') 選擇新的XElement( 「利」, 新的XElement( 「BC」,字段[0]), new XElement(「dt」,fields [1]) ) ); File:WriteAllText(@「C:\ Desktop \ xmlout.xml」,xml + top.ToString()); – Amar