CharEnumerator.Current Property

Gets the currently referenced character in the string enumerated by this CharEnumerator object.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

public char Current { get; }
/** @property */
public final char get_Current ()

public final function get Current () : char

Not applicable.

Property Value

The Unicode character currently referenced by this CharEnumerator object.

Exception typeCondition


The index is invalid; that is, it is before the first or after the last character of the enumerated string.

The CharEnumerator class maintains an internal index to the enumerated string, and the Current property returns the character that is currently referenced by the index. This property should be invoked only when the index is valid; otherwise, an exception is thrown.

The index is always invalid for an empty string (""). The index is also invalid after the String.GetEnumerator or Reset method is called. After either of these methods is called, invoke the MoveNext method to adjust the index to the first character in the enumerated string. The index is valid whenever the MoveNext method returns true.

Current does not move the index, and consecutive calls to Current return the same character until MoveNext, Reset, or String.GetEnumerator is called.

The following example uses the CharEnumerator class to enumerate the individual characters in a string. It instantiates a CharEnumerator object by calling the String.GetEnumerator method, moves from one character to the next by calling the MoveNext method, and displays the current character by retrieving the value of the Current property.

Note, however, that the same operation can be performed somewhat more intuitively by using foreach (in C#) or For Each (in Visual Basic), as the following example shows.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

XNA Framework

Supported in: 1.0