1

私はC#を初めて使用し、コーディングはすべて、特定のファイルがフォルダーに表示されたときにトリガーおよびイベントするファイルウォッチャーでしたが、最近、CSVファイルからXMLファイルを生成するタスクが与えられました。

私はいくつかのグーグルを行っFile.ReadAllLinesたところ、csvファイルを読み取ってからXElementXMLファイルを作成するために 使用するコードを見つけました

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

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 になり、一部は SELL になります。CSV を BUY または SELL テキストを含む列に解析し、条件ステートメントを使用してそれを確認し、それが BUY の場合は ... XML の 1 つのセットを書き、SELL の場合は別のセットを書くにはどうすればよいですか? XML と EOF まで続行しますか?

いくつかのページを読んだことがありますが、LINQ がその方法のようです。

使用している私のコードがさらに必要な場合は、投稿します。

4

0 に答える 0