System.Collections.Specialized.NameValueCollection

using  System;
using  System.Collections;
using  System.Collections.Specialized;

public   class  SamplesNameValueCollection   {

   
public static void Main()  {

      
// Creates and initializes a new NameValueCollection.
      NameValueCollection myCol = new NameValueCollection();
      myCol.Add( 
"red""rojo" );
      myCol.Add( 
"green""verde" );
      myCol.Add( 
"blue""azul" );
      myCol.Add( 
"red""rouge" );

      
// Displays the values in the NameValueCollection in two different ways.
      Console.WriteLine( "Displays the elements using the AllKeys property and the Item (indexer) property:" );
      PrintKeysAndValues( myCol );
      Console.WriteLine( 
"Displays the elements using GetKey and Get:" );
      PrintKeysAndValues2( myCol );

      
// Gets a value either by index or by key.
      Console.WriteLine( "Index 1 contains the value {0}.", myCol[1] );
      Console.WriteLine( 
"Key \"red\" has the value {0}.", myCol["red"] );
      Console.WriteLine();

      
// Copies the values to a string array and displays the string array.
      String[] myStrArr = new String[myCol.Count];
      myCol.CopyTo( myStrArr, 
0 );
      Console.WriteLine( 
"The string array contains:" );
      
foreach ( String s in myStrArr )
         Console.WriteLine( 
"   {0}", s );
      Console.WriteLine();

      
// Searches for a key and deletes it.
      myCol.Remove( "green" );
      Console.WriteLine( 
"The collection contains the following elements after removing \"green\":" );
      PrintKeysAndValues( myCol );

      
// Clears the entire collection.
      myCol.Clear();
      Console.WriteLine( 
"The collection contains the following elements after it is cleared:" );
      PrintKeysAndValues( myCol );

   }


   
public static void PrintKeysAndValues( NameValueCollection myCol )  {
      IEnumerator myEnumerator 
= myCol.GetEnumerator();
      Console.WriteLine( 
"   KEY        VALUE" );
      
foreach ( String s in myCol.AllKeys )
         Console.WriteLine( 
"   {0,-10} {1}", s, myCol[s] );
      Console.WriteLine();
   }


   
public static void PrintKeysAndValues2( NameValueCollection myCol )  {
      Console.WriteLine( 
"   [INDEX] KEY        VALUE" );
      
for ( int i = 0; i < myCol.Count; i++ )
         Console.WriteLine( 
"   [{0}]     {1,-10} {2}", i, myCol.GetKey(i), myCol.Get(i) );
      Console.WriteLine();
   }



}


/**/ /*

This code produces the following output.

Displays the elements using the AllKeys property and the Item (indexer) property:
   KEY        VALUE
   red        rojo,rouge
   green      verde
   blue       azul

Displays the elements using GetKey and Get:
   [INDEX] KEY        VALUE
   [0]     red        rojo,rouge
   [1]     green      verde
   [2]     blue       azul

Index 1 contains the value verde.
Key "red" has the value rojo,rouge.

The string array contains:
   rojo,rouge
   verde
   azul

The collection contains the following elements after removing "green":
   KEY        VALUE
   red        rojo,rouge
   blue       azul

The collection contains the following elements after it is cleared:
   KEY        VALUE


*/
Represents a collection of associated String keys and String values that can be accessed either with the key or with the index

This collection is based on the NameObjectCollectionBase class. However, unlike the NameObjectCollectionBase, this class stores multiple string values under a single key.

This class can be used for headers, query strings and form data.

Each element is a key/value pair.

The capacity of a NameValueCollection is the number of elements the NameValueCollection can hold. As elements are added to a NameValueCollection, the capacity is automatically increased as required through reallocation.


转载于:https://www.cnblogs.com/onlyendure/archive/2008/05/08/1187740.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值