字串字典,只能使用字串,如果你操作的對象是字串,那這個類別絕對是你的首選,因為它可以省下轉型的動作。
NameValueCollection 特性如下:
1.一個索引鍵(Key)對應到多個內容(Value),不同於StringCollection。
2.用GetValues方法取得的值是陣列型態,所以在處理上要小心。
續上一篇 [C#.NET][VB.NET] 一般 / 泛型 Generic Collection 集合型別介紹
字串字典,只能使用字串,如果你操作的對象是字串,那這個類別絕對是你的首選,因為它可以省下轉型的動作。
NameValueCollection 特性如下:
1.一個索引鍵(Key)對應到多個內容(Value),不同於StringCollection。
2.用GetValues方法取得的值是陣列型態,所以在處理上要小心。
3.Key/Value都要是字串
以下範例需要命名空間System.Collections.Specialized
如何使用NameValueCollection
1.引用NameValueCollection類別。
NameValueCollection nvc = new NameValueCollection();
2.加入索引鍵(Key)及內容(Value),索引鍵與內容必須是字串。
nvc.Add("A", "one");
C#完整範例用法如下:
private void button3_Click(object sender, EventArgs e)
{
//1.引用NameValueCollection類別。
NameValueCollection nvc = new NameValueCollection();
//2.加入索引鍵(Key)及內容(Value),索引鍵必須是字串。
nvc.Add("A", "one");
nvc.Add("A", "one-one");
nvc.Add("B", "two");
nvc.Add("C", "three");
nvc.Add("C", "three-one");
nvc.Add("C", "three-two");
//列出物件所包含的索引鍵及內容
foreach (string k in nvc.Keys)
{
Console.WriteLine("Key:{0}", k);
//因為GetValues方法所取得的是字串陣列,所以就利用String.Join方法來處理
Console.WriteLine("\tValues:" + string.Join(",", nvc.GetValues(k)));
}
}
VB完整範例用法如下:
Private Sub button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button3.Click
'1.引用NameValueCollection類別
Dim nvc As NameValueCollection = New NameValueCollection()
' 2.加入索引鍵(Key)及內容(Value),索引鍵必須是字串。
nvc.Add("A", "one")
nvc.Add("A", "one-one")
nvc.Add("B", "two")
nvc.Add("C", "three")
nvc.Add("C", "three-one")
nvc.Add("C", "three-two")
'列出物件所包含的索引鍵及內容
For Each k As String In nvc.Keys
Console.WriteLine("Key:{0}", k)
' 因為GetValues方法所取得的是字串陣列,所以就利用String.Join方法來處理
Console.WriteLine(vbTab + "Values:" + String.Join(",", nvc.GetValues(k)))
Next
End Sub
範例下載: [C#.NET][VB.NET]StringCollection.rar
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET