从CSV创建XML文件

时间:2013-01-07 21:36:17

标签: c# csv xelement

我是C#的新手,所有我编码的都是文件监视器,当某个文件出现在文件夹中时会触发和触发事件但是最近我被赋予了从CSV文件生成XML文件的任务。

我做了一些谷歌搜索,我找到了一些使用File.ReadAllLines读取csv文件然后使用XElement创建XML文件的代码

......................

string[] source = File.ReadAllLines("DailyEZETaranTrades.csv");
source = source.Skip(2).Take(source.Length - 1).ToArray();

            XElement cust = new XElement("GenevaLoader",
                from str in source.Skip(2).Take(source.Length - 1)
                let fields = str.Split(',')

                select new XElement("Buy_New",
                    new XElement("RecordID", fields[0].Replace(" ", "")),
                    new XElement("Portfolio", fields[1].Replace(" ", "")),
                    new XElement("Broker", fields[2].Replace(" ", "")),
                    new XElement("Custodian", fields[3].Replace(" ", "")),
                    new XElement("Transaction", fields[4].Replace(" ", "")),
                    new XElement("Status", fields[5].Replace(" ", "")),
                    new XElement("SecurityType", fields[6].Replace(" ", "")),
                    new XElement("Security", fields[7].Replace(" ", "")),
                    new XElement("SecurityDescription", fields[8].Replace(" ", "")),
                    ....
                    ....
                    ....

这很有效,除了我的cvs文件会有不同的类别...例如,某些行将是BUY,有些行将是卖出。如何将CSV解析为包含BUY或SELL文本的列,然后使用条件语句检查它是否为BUY ...编写一组XML,如果是SELL,则编写另一组XML并继续直到EOF?

我看过一些页面,看起来LINQ就是这样吗?

如果您需要更多我的代码我会发布它。

0 个答案:

没有答案