2017-04-07 81 views
2

多個字符串我有類似:聲明從代碼

XmlDocument doc = new XmlDocument(); 
doc.Load(@"D:\filter.xml"); 
string filter1 = doc.SelectSingleNode("filter/f1").InnerText; 
string filter2 = doc.SelectSingleNode("filter/f2").InnerText; 
string filter3 = doc.SelectSingleNode("filter/f3").InnerText; 
string filter4 = doc.SelectSingleNode("filter/f4").InnerText; 
string filter5 = doc.SelectSingleNode("filter/f5").InnerText; 
string filter6 = doc.SelectSingleNode("filter/f6").InnerText; 

等等...我的問題是我怎麼能產生一個循環像這些字符串?

XmlDocument doc = new XmlDocument(); 
doc.Load(@"D:\filter.xml"); 
for (int i = 0; i < 7; i++) 
{ 
    string filter + i = doc.SelectSingleNode("filter/f" + i).InnerText;;   
} 
+2

使用數組,哈希表,列表,字典,... – DarkBee

+1

這將有助於瞭解如何在使用過濾器1-6後*它們已被填充。 –

+0

你會在哪裏使用過濾器字符串? – jackjop

回答

3

你想用一個集合,像List<string>

XmlDocument doc = new XmlDocument(); 
doc.Load(@"D:\filter.xml"); 
var myList = new List<strinig>; 

for (int i = 0; i < 7; i++) 
{ 
    myList.Add(doc.SelectSingleNode("filter/f" + i).InnerText);  
} 

然後你就可以通過引用一個字符串的索引使用列表:

​​
4

填寫一個List<string>

List<string> filterList = new List<string>(); 
for (int i = 0; i < 7; i++) 
{ 
    filterList.Add(doc.SelectSingleNode("filter/f" + i).InnerText); 
} 

現在,您可以通過索引f.e訪問它們。過濾器5:

string filter5 = filterList[4]; // zero based 
2

使用集合來存儲字符串,這是您如何來收集從XML字符串添加。

 doc.Load(@"D:\filter.xml"); 
     List<string> filter = new List<string>(); 
     foreach (XmlNode item in doc.SelectSingleNode("filter").ChildNodes) 
     { 
      filter.Add(item.InnerText.ToString()); 
     } 


希望這有助於。