私はXMLデータを処理する過程で何をしようとしています。XMLからの配列の印刷 - C#
ユーザー上記名前を持つ各ノードのドロップダウンリスト
から名前値を選択し、値が
リストは、文字列配列に変換リストに追加され
**テストする配列を出力すると、出力は返されません。
int配列に変換された文字列配列Y( アレイ上の計算を可能にするために)
**印刷は、ここで私が作成したコードが再び
何も出力を提供しない場合、私は言うカントので、私は何も出力エラーを取得していません配列が作成されました。
if (DropDownList1.SelectedItem.Text=="Cabin")
{
//Load XML document
XmlDocument xml = new XmlDocument();
xml.LoadXml(Server.MapPath("~/Upload/" + FileUpload1.FileName));
// xnList = nodes -> rows with Cabin
XmlNodeList xnList = xml.SelectNodes("/root/row[@name='Cabin']");
//create a string list
List<string> strvalues = new List<string>();
//populate list with values @ node Cabin
foreach (XmlNode xn in xnList)
{
strvalues.Add(xn["value"].InnerText);
}
//convert list to array
strvalues.ToArray();
for (int i = 0; i < 2; i++)
{
//print array
Console.WriteLine(strvalues[i]);
}
//convert string array to int array for data manipulation
int[] values = strvalues.Select(x => int.Parse(x)).ToArray();
for (int i = 0; i < values.Length; i++)
{
//print array
Console.WriteLine(values[i]);
}
}
ここにXMLファイルのセクションもあります。
<root>
<row>
<var name="Name" value="Garcia" />
<var name=" Surname" value=" Jose" />
<var name=" Country" value=" Cuba" />
<var name=" Job" value="Software Developer" />
<var name=" Cabin" value="345" />
</row>
<row>
<var name="Name" value="Lenon" />
<var name=" Surname" value="Tim" />
<var name=" Country" value="USA" />
<var name=" Job" value="SoftwareDeveloper" />
<var name=" Cabin" value="444" />
</row>
</root>
スペースの問題を指摘していただきありがとうございます。この理由は、.csvファイルをXMLに変換しているため、見落としたスペースの問題が明らかです。配列に変換する限り、配列のデータを渡すことができる必要があるので、リストをint配列に変換することを最善に考えました – user123
'int'配列に変換するコードは問題ありませんが、 'strvalues.ToArray()'の以前の呼び出しは不要です(戻り値を無視しているので、何の効果もありません)。 – Sven