コンマ区切りの文字列をXML形式にするにはどうすればいいですか?
質問
VB.net(.net 2.0)の使用 この形式の文字列があります:
record1_field1,record1_field2,record2_field3,record2_field1,record2_field2,
etc ...
これをxmlに入れる最良の(最も簡単な)方法は何だろうか?
2つの方法が考えられます:
方法1: -分割を使用して配列内のアイテムを取得する -配列をループし、連結を使用してxml文字列を構築します
方法2: -分割を使用して配列内のアイテムを取得する -配列をループしてデータテーブルを構築します -writexmlを使用して、データテーブルからxmlを出力します
最初のコードは非常にシンプルに聞こえますが、文字列を作成するためにより多くのロジックが必要です。
2番目は、より滑らかで理解しやすいようです。
これを行う他の方法はありますか?
解決
このようなことをします:
XmlDocument doc = new XmlDocuent();
string[] data = csv.split(',');
XmlNode = doc.CreateElement("root");
foreach(string str in data)
{
XmlNode node = doc.CreateElement("data");
node.innerText = str;
root.AppendChild(node);
}
Console.WriteLine(doc.InnerXML);
次のようなものを返す必要があります:
<root>
<data>field 1</data>
<data>field 2</data>
<data>field 3</data>
</root>
ネストされたデータでは、ループをネストするか、少し異なる方法でトークン化する必要があります...
他のヒント
文字列の連結を行う代わりに、XmlDocumentを作成し、文字列から適切なXmlElementおよびXmlAttributeオブジェクトを詰め込むこともできます。次に、XmlDocumentオブジェクトを書き出します...
所属していません StackOverflow