Hashtable.CopyTo Method
Namespace: System.Collections
Assembly: mscorlib (in mscorlib.dll)
Parameters
- array
- Type: System.Array
The one-dimensional Array that is the destination of the DictionaryEntry objects copied from Hashtable. The Array must have zero-based indexing.
- arrayIndex
- Type: System.Int32
The zero-based index in array at which copying begins.
Implements
ICollection.CopyTo(Array, Int32)| Exception | Condition |
|---|---|
| ArgumentNullException | array is null. |
| ArgumentOutOfRangeException | arrayIndex is less than zero. |
| ArgumentException | array is multidimensional. -or- The number of elements in the source Hashtable is greater than the available space from arrayIndex to the end of the destination array. |
| InvalidCastException | The type of the source Hashtable cannot be cast automatically to the type of the destination array. |
The following example shows how to copy the list of keys or the list of values in a Hashtable into a one-dimensional Array.
using System; using System.Collections; public class SamplesHashtable { public static void Main() { // Creates and initializes the source Hashtable. Hashtable mySourceHT = new Hashtable(); mySourceHT.Add( "A", "valueA" ); mySourceHT.Add( "B", "valueB" ); // Creates and initializes the one-dimensional target Array. String[] myTargetArray = new String[15]; myTargetArray[0] = "The"; myTargetArray[1] = "quick"; myTargetArray[2] = "brown"; myTargetArray[3] = "fox"; myTargetArray[4] = "jumped"; myTargetArray[5] = "over"; myTargetArray[6] = "the"; myTargetArray[7] = "lazy"; myTargetArray[8] = "dog"; // Displays the values of the target Array. Console.WriteLine( "The target Array contains the following before:" ); PrintValues( myTargetArray, ' ' ); // Copies the keys in the source Hashtable to the target Hashtable, starting at index 6. Console.WriteLine( "After copying the keys, starting at index 6:" ); mySourceHT.Keys.CopyTo( myTargetArray, 6 ); // Displays the values of the target Array. PrintValues( myTargetArray, ' ' ); // Copies the values in the source Hashtable to the target Hashtable, starting at index 6. Console.WriteLine( "After copying the values, starting at index 6:" ); mySourceHT.Values.CopyTo( myTargetArray, 6 ); // Displays the values of the target Array. PrintValues( myTargetArray, ' ' ); } public static void PrintValues( String[] myArr, char mySeparator ) { for ( int i = 0; i < myArr.Length; i++ ) Console.Write( "{0}{1}", mySeparator, myArr[i] ); Console.WriteLine(); } } /* This code produces the following output. The target Array contains the following before: The quick brown fox jumped over the lazy dog After copying the keys, starting at index 6: The quick brown fox jumped over B A dog After copying the values, starting at index 6: The quick brown fox jumped over valueB valueA dog */
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.