Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Char-Struktur

 

Veröffentlicht: August 2016

Stellt ein Zeichen als UTF-16-Codeeinheit dar.

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

[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct Char : IComparable, IConvertible, IComparable<char>, 
	IEquatable<char>

NameBeschreibung
System_CAPS_pubmethodCompareTo(Char)

Vergleicht diese Instanz mit einem angegebenen Char-Objekt und gibt an, ob diese Instanz in der Sortierreihenfolge an einer früheren, späteren oder derselben Position wie das angegebene Char-Objekt aufgeführt wird.

System_CAPS_pubmethodCompareTo(Object)

Vergleicht diese Instanz mit einem angegebenen Objekt und gibt an, ob diese Instanz in der Sortierreihenfolge an einer früheren, späteren oder derselben Position wie das angegebene Object aufgeführt wird.

System_CAPS_pubmethodSystem_CAPS_staticConvertFromUtf32(Int32)

Konvertiert den angegebenen Unicode-Codepunkt in eine UTF-16-codierte Zeichenfolge.

System_CAPS_pubmethodSystem_CAPS_staticConvertToUtf32(Char, Char)

Konvertiert den Wert eines UTF-16-codierten Ersatzzeichenpaars in einen Unicode-Codepunkt.

System_CAPS_pubmethodSystem_CAPS_staticConvertToUtf32(String, Int32)

Konvertiert den Wert eines UTF-16-codierten Zeichens oder Ersatzzeichenpaars an der angegebenen Position in einer Zeichenfolge in einen Unicode-Codepunkt.

System_CAPS_pubmethodEquals(Char)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Char-Objekt ist.

System_CAPS_pubmethodEquals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.(Überschreibt ValueType.Equals(Object).)

System_CAPS_pubmethodGetHashCode()

Gibt den Hashcode für diese Instanz zurück.(Überschreibt ValueType.GetHashCode().)

System_CAPS_pubmethodSystem_CAPS_staticGetNumericValue(Char)

Konvertiert das angegebene numerische Unicode-Zeichen in eine Gleitkommazahl mit doppelter Genauigkeit.

System_CAPS_pubmethodSystem_CAPS_staticGetNumericValue(String, Int32)

Konvertiert das numerische Unicode-Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge in eine Gleitkommazahl mit doppelter Genauigkeit.

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodGetTypeCode()

Gibt den TypeCode für den Werttyp Char zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetUnicodeCategory(Char)

Kategorisiert ein angegebenes Unicode-Zeichen in einer Gruppe, die durch einen der UnicodeCategory-Werte bezeichnet wird.

System_CAPS_pubmethodSystem_CAPS_staticGetUnicodeCategory(String, Int32)

Kategorisiert das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge in einer Gruppe, die durch einen der UnicodeCategory-Werte bezeichnet wird.

System_CAPS_pubmethodSystem_CAPS_staticIsControl(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Steuerzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsControl(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Steuerzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsDigit(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Dezimalzahl kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsDigit(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Dezimalzahl kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsHighSurrogate(Char)

Gibt an, ob das angegebene Char-Objekt ein hohes Ersatzzeichen ist.

System_CAPS_pubmethodSystem_CAPS_staticIsHighSurrogate(String, Int32)

Gibt an, ob das Char-Objekt an der angegebenen Position in einer Zeichenfolge ein hohes Ersatzzeichen ist.

System_CAPS_pubmethodSystem_CAPS_staticIsLetter(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Unicode-Buchstabe kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsLetter(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Unicode-Buchstabe kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsLetterOrDigit(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Buchstabe oder als Dezimalzahl kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsLetterOrDigit(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Buchstabe oder Dezimalzahl kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsLower(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Kleinbuchstabe kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsLower(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Kleinbuchstabe kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsLowSurrogate(Char)

Gibt an, ob das angegebene Char-Objekt ein niedriges Ersatzzeichen ist.

System_CAPS_pubmethodSystem_CAPS_staticIsLowSurrogate(String, Int32)

Gibt an, ob das Char-Objekt an der angegebenen Position in einer Zeichenfolge ein niedriges Ersatzzeichen ist.

System_CAPS_pubmethodSystem_CAPS_staticIsNumber(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Zahl kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsNumber(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Zahl kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsPunctuation(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Satzzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsPunctuation(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Satzzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsSeparator(Char)

Gibt an, ob ein angegebenes Unicode-Zeichen als Trennzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsSeparator(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Trennzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsSurrogate(Char)

Gibt an, ob das angegebene Zeichen über einen Ersatzzeichencodeeinheit verfügt.

System_CAPS_pubmethodSystem_CAPS_staticIsSurrogate(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge über einen Ersatzzeichen-Codeeinheit verfügt.

System_CAPS_pubmethodSystem_CAPS_staticIsSurrogatePair(Char, Char)

Gibt an, ob die beiden angegebenen Char-Objekte ein Ersatzzeichenpaar bilden.

System_CAPS_pubmethodSystem_CAPS_staticIsSurrogatePair(String, Int32)

Gibt an, ob zwei aufeinander folgende Char-Objekte an einer angegebenen Position in einer Zeichenfolge ein Ersatzzeichenpaar bilden.

System_CAPS_pubmethodSystem_CAPS_staticIsSymbol(Char)

Gibt an, ob ein angegebenes Unicode-Zeichen als Symbolzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsSymbol(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Symbolzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsUpper(Char)

Gibt an, ob ein angegebenes Unicode-Zeichen als Großbuchstabe kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsUpper(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Großbuchstabe kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsWhiteSpace(Char)

Gibt an, ob das angegebene Unicode-Zeichen als Leerzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticIsWhiteSpace(String, Int32)

Gibt an, ob das Zeichen an der angegebenen Position in einer angegebenen Zeichenfolge als Leerzeichen kategorisiert wird.

System_CAPS_pubmethodSystem_CAPS_staticParse(String)

Konvertiert den Wert der angegebenen Zeichenfolge in das entsprechende Unicode-Zeichen.

System_CAPS_pubmethodSystem_CAPS_staticToLower(Char)

Konvertiert den Wert eines Unicode-Zeichens in den entsprechenden Kleinbuchstaben.

System_CAPS_pubmethodSystem_CAPS_staticToLower(Char, CultureInfo)

Konvertiert den Wert eines angegebenen Unicode-Zeichens unter Verwendung der angegebenen kulturabhängigen Formatierungsinformationen in den entsprechenden Kleinbuchstaben.

System_CAPS_pubmethodSystem_CAPS_staticToLowerInvariant(Char)

Konvertiert den Wert eines Unicode-Zeichens in dessen Entsprechung in Kleinbuchstaben unter Verwendung der Regeln der invarianten Kultur für Groß- und Kleinschreibung.

System_CAPS_pubmethodToString()

Konvertiert den Wert dieser Instanz in die entsprechende Zeichenfolgendarstellung.(Überschreibt ValueType.ToString().)

System_CAPS_pubmethodSystem_CAPS_staticToString(Char)

Konvertiert das angegebene Unicode-Zeichen in die entsprechende Zeichenfolgendarstellung.

System_CAPS_pubmethodToString(IFormatProvider)

Konvertiert den Wert dieser Instanz unter Verwendung der angegebenen kulturabhängigen Formatierungsinformationen in die entsprechende Zeichenfolgenentsprechung.

System_CAPS_pubmethodSystem_CAPS_staticToUpper(Char)

Konvertiert den Wert eines Unicode-Zeichens in den entsprechenden Großbuchstaben.

System_CAPS_pubmethodSystem_CAPS_staticToUpper(Char, CultureInfo)

Konvertiert den Wert eines angegebenen Unicode-Zeichens unter Verwendung der angegebenen kulturabhängigen Formatierungsinformationen in den entsprechenden Großbuchstaben.

System_CAPS_pubmethodSystem_CAPS_staticToUpperInvariant(Char)

Konvertiert den Wert eines Unicode-Zeichens in dessen Entsprechung in Großbuchstaben unter Verwendung der Regeln der invarianten Kultur für Groß- und Kleinschreibung.

System_CAPS_pubmethodSystem_CAPS_staticTryParse(String, Char)

Konvertiert den Wert der angegebenen Zeichenfolge in das entsprechende Unicode-Zeichen. Ein Rückgabecode gibt an, ob die Konvertierung erfolgreich war oder nicht.

NameBeschreibung
System_CAPS_pubfieldSystem_CAPS_staticMaxValue

Stellt den größtmöglichen Wert von Char dar. Dieses Feld ist konstant.

System_CAPS_pubfieldSystem_CAPS_staticMinValue

Stellt den kleinstmöglichen Wert von Char dar. Dieses Feld ist konstant.

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToBoolean(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Hinweis   Diese Konvertierung wird nicht unterstützt. Bei einem entsprechenden Versuch wird eine InvalidCastException ausgelöst.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToByte(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToByte.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToChar(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToChar.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToDateTime(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Hinweis   Diese Konvertierung wird nicht unterstützt. Bei einem entsprechenden Versuch wird eine InvalidCastException ausgelöst.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToDecimal(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Hinweis   Diese Konvertierung wird nicht unterstützt. Bei einem entsprechenden Versuch wird eine InvalidCastException ausgelöst.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToDouble(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Hinweis   Diese Konvertierung wird nicht unterstützt. Bei einem entsprechenden Versuch wird eine InvalidCastException ausgelöst.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToInt16(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToInt16.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToInt32(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToInt32.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToInt64(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToInt64.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToSByte(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToSByte.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToSingle(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Hinweis   Diese Konvertierung wird nicht unterstützt. Bei einem entsprechenden Versuch wird eine InvalidCastException ausgelöst.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToType(Type, IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToType.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToUInt16(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToUInt16.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToUInt32(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToUInt32.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIConvertible.ToUInt64(IFormatProvider)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IConvertible.ToUInt64.

Die .NET Framework verwendet die Char Struktur eine Unicode-Zeichen dar. Unicode-Standard identifiziert jedes Unicode-Zeichen mit einer eindeutigen bezeichnet einen Codepunkt skalare 21-Bit-Zahl, und definiert die Codierung UTF-16-Format, die angibt, wie ein Codepunkt in eine Sequenz von mindestens 16-Bit-Werten codiert ist. Jeder 16-Bit-Wert reicht von hexadezimalen 0 x 0000 bis 0xFFFF zurück und befindet sich in einem Char Struktur. Der Wert des einem Char Objekt ist der Wert 16-Bit-numerische (Ordnungszahl).

In den folgenden Abschnitten untersuchen Sie die Beziehung zwischen einer Char -Objekt und ein Zeichen und Erläutern Sie einige allgemeinen Aufgaben mit Char Instanzen.

Char-Objekte, Unicode-Zeichen und Zeichenfolgen
Zeichen und Zeichenkategorien
Zeichen und Text-Element
Allgemeine Vorgänge
Char-Werten und interop

Ein String Objekt ist eine sequenzielle Auflistung von Char Strukturen, die eine Textzeichenfolge repräsentieren. Die meisten Unicode-Zeichen können dargestellt werden, über einen einzelnen Char -Objekt, aber ein Zeichen, das als ein Basiszeichen codiert ist Ersatzzeichenpaar und/oder Zeichenfolge Kombinieren von mehreren dargestellt Char Objekte. Aus diesem Grund eine Char -Struktur einem String Objekt entspricht nicht unbedingt in ein einzelnes Unicode-Zeichen.

Mehrere Einheiten von 16-Bit-Code werden zur Darstellung der einzelner Unicode-Zeichen in den folgenden Fällen verwendet:

  • Symbole, die ein einzelnes Zeichen oder ein Basiszeichen gefolgt von einem oder mehreren Kombination von Zeichen bestehen können. Das Zeichen "ä" wird beispielsweise dargestellt, durch ein Char Objekt, dessen Code Einheit U + 0061 ist, gefolgt von einem Char -Objekt, dessen Codeeinheit U + 0308 ist. (Die Zeichen "ä" kann auch definiert werden, von einem einzelnen Char -Objekt, das ein Codeeinheit U + 00E4 verfügt.) Das folgende Beispiel veranschaulicht, dass das Zeichen "ä" aus zwei besteht Char Objekte.

    using System;
    using System.IO;
    
    public class Example
    {
       public static void Main()
       {
          StreamWriter sw = new StreamWriter("chars1.txt");
          char[] chars = { '\u0061', '\u0308' };
          string strng = new String(chars);
          sw.WriteLine(strng); 
          sw.Close();
       }
    }
    // The example produces the following output:
    //       ä
    
  • Zeichen außerhalb der Unicode-Basic Multilingual Plane (BMP). Unicode unterstützt 16 Ebenen zusätzlich zu den BMP, auf der Ebene 0 darstellt. Ein Unicode-Codepunkt wird durch einen 21-Bit-Wert, der die Ebene enthält, in UTF-32 dargestellt. U + 1D160 stellt z. B. die Musik SYMBOL ACHTE Hinweis-Zeichen dar. Da UTF-16-Codierung nur 16 Bits hat, werden Zeichen außerhalb des BMP von Ersatzzeichenpaaren in UTF-16 dargestellt. Das folgende Beispiel veranschaulicht, dass UTF-32 U + 1D160, das Musik SYMBOL ACHTE Hinweis-Zeichen U + D834 U + DD60 entspricht. U + D834 ist das hohe Ersatzzeichen. hohe Ersatzzeichen liegen zwischen U + D800 und U + DBFF liegt. U + DD60 ist das niedrige Ersatzzeichen. niedrige Ersatzzeichen liegen zwischen U + DC00 und U + DFFF.

    using System;
    using System.IO;
    
    public class Example
    {
       public static void Main()
       {
          StreamWriter sw = new StreamWriter(@".\chars2.txt");
          int utf32 = 0x1D160;
          string surrogate = Char.ConvertFromUtf32(utf32);
          sw.WriteLine("U+{0:X6} UTF-32 = {1} ({2}) UTF-16", 
                       utf32, surrogate, ShowCodePoints(surrogate));
          sw.Close();                    
       }
    
       private static string ShowCodePoints(string value)
       {
          string retval = null;
          foreach (var ch in value)
             retval += String.Format("U+{0:X4} ", Convert.ToUInt16(ch));
    
          return retval.Trim();
       }
    }
    // The example produces the following output:
    //       U+01D160 UTF-32 = ð (U+D834 U+DD60) UTF-16
    

Jedes Unicode-Zeichen oder Ersatzzeichenpaar gültige Unicode-Kategorie gehört. In .NET Framework Unicode-Kategorien dargestellt werden, von einem Mitglied der UnicodeCategory Enumeration und enthalten Werte, z. B. UnicodeCategory.CurrencySymbol, UnicodeCategory.LowercaseLetter, und UnicodeCategory.SpaceSeparator, z. B.

Um die Unicode-Kategorie eines Zeichens zu bestimmen, rufen Sie die GetUnicodeCategory Methode. Im folgende Beispiel ruft z. B. die GetUnicodeCategory die Unicode-Kategorie jedes Zeichens in einer Zeichenfolge angezeigt.

using System;
using System.Globalization;

class Example
{
   public static void Main()
   {
      // Define a string with a variety of character categories.
      String s = "The car drove down the narrow, secluded road.";
      // Determine the category of each character.
      foreach (var ch in s)
         Console.WriteLine("'{0}': {1}", ch, Char.GetUnicodeCategory(ch)); 

   }
}
// The example displays the following output:
//      'T': UppercaseLetter
//      'h': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'r': LowercaseLetter
//      'e': LowercaseLetter
//      'd': LowercaseLetter
//      ' ': SpaceSeparator
//      'c': LowercaseLetter
//      'a': LowercaseLetter
//      'r': LowercaseLetter
//      ' ': SpaceSeparator
//      'd': LowercaseLetter
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'v': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'd': LowercaseLetter
//      'o': LowercaseLetter
//      'w': LowercaseLetter
//      'n': LowercaseLetter
//      ' ': SpaceSeparator
//      't': LowercaseLetter
//      'h': LowercaseLetter
//      'e': LowercaseLetter
//      ' ': SpaceSeparator
//      'l': LowercaseLetter
//      'o': LowercaseLetter
//      'n': LowercaseLetter
//      'g': LowercaseLetter
//      ',': OtherPunctuation
//      ' ': SpaceSeparator
//      'n': LowercaseLetter
//      'a': LowercaseLetter
//      'r': LowercaseLetter
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'w': LowercaseLetter
//      ',': OtherPunctuation
//      ' ': SpaceSeparator
//      's': LowercaseLetter
//      'e': LowercaseLetter
//      'c': LowercaseLetter
//      'l': LowercaseLetter
//      'u': LowercaseLetter
//      'd': LowercaseLetter
//      'e': LowercaseLetter
//      'd': LowercaseLetter
//      ' ': SpaceSeparator
//      'r': LowercaseLetter
//      'o': LowercaseLetter
//      'a': LowercaseLetter
//      'd': LowercaseLetter
//      '.': OtherPunctuation

Intern für Zeichen außerhalb des ASCII-Bereichs (U + 0000 bis U + 00FF) die GetUnicodeCategory Methode hängt vom Unicode-Kategorien, die gemeldet werden, indem die CharUnicodeInfo Klasse. Beginnend mit der .NET Framework 4.6.2, Unicode-Zeichen werden basierend auf klassifiziert The Unix Standard, Version 8.0.0. In Versionen von .NET Framework von der .NET Framework 4 auf die .NET Framework 4.6.1, werden sie klassifiziert, basierend auf The Unix Standard, Version 6.3.0.

Da ein einzelnes Zeichen kann, von mehreren dargestellt werden Char Objekte, es ist nicht immer sinnvoll, arbeiten mit einzelnen Char Objekte. Das folgende Beispiel konvertiert z. B. die Unicode-Codepunkten, die diesen Zahlen 0 bis 9 für UTF-16-codierte Codeeinheiten darstellen. Da es fälschlicherweise entspricht Char Objekte mit Zeichen, d. h. es ungenau berichtet, dass die resultierende Zeichenfolge 20 Zeichen umfasst.

using System;

public class Example
{
   public static void Main()
   {
      string result = String.Empty;
      for (int ctr = 0x10107; ctr <= 0x10110; ctr++)  // Range of Aegean numbers.
         result += Char.ConvertFromUtf32(ctr);

      Console.WriteLine("The string contains {0} characters.", result.Length); 
   }
}
// The example displays the following output:
//     The string contains 20 characters.

Erreichen Sie Folgendes ein, um die Annahme zu vermeiden, die eine Char -Objekt stellt ein einzelnes Zeichen dar.

  • Arbeiten mit können Sie eine String Objekt in seiner Gesamtheit statt mit seiner einzelnen Zeichen darstellen, und analysieren die sprachlichen arbeiten.

  • Sie können die StringInfo Klasse zur Bearbeitung von Textelementen anstelle von einzelnen Char Objekte. Im folgenden Beispiel wird die StringInfo Objekt, das die Anzahl der Textelemente in einer Zeichenfolge zu ermitteln, aus denen Ägäischen besteht Zahlen 0 bis 9. Da es ein einzelnes Zeichen ein Ersatzzeichenpaar ansieht, meldet er ordnungsgemäß, dass die Zeichenfolge zehn Zeichen enthält.

    using System;
    using System.Globalization;
    
    public class Example
    {
       public static void Main()
       {
          string result = String.Empty;
          for (int ctr = 0x10107; ctr <= 0x10110; ctr++)  // Range of Aegean numbers.
             result += Char.ConvertFromUtf32(ctr);
    
          StringInfo si = new StringInfo(result);
          Console.WriteLine("The string contains {0} characters.", 
                            si.LengthInTextElements); 
       }
    }
    // The example displays the following output:
    //       The string contains 10 characters.
    
  • Wenn eine Zeichenfolge ein Basiszeichens enthält, eine oder mehrere Kombinationszeichen hat, können Sie Aufrufen der String.Normalize Methode, die Teilzeichenfolge in eine einzelne UTF-16-codierte Codeeinheit zu konvertieren. Im folgenden Beispiel wird die String.Normalize Methode, um die Basiszeichen 0061 ist U + (LATEINISCH KLEINBUCHSTABEN A) und das Kombinieren von Zeichen U + 0308 (DIÄRESE KOMBINIEREN), U + 00E4 konvertieren (LATEINISCH kleine Buchstaben A mit DIÄRESE).

    using System;
    
    public class Example
    {
       public static void Main()
       {
          string combining = "\u0061\u0308";
          ShowString(combining);
    
          string normalized = combining.Normalize();
          ShowString(normalized);
       }
    
       private static void ShowString(string s)
       {
          Console.Write("Length of string: {0} (", s.Length);
          for (int ctr = 0; ctr < s.Length; ctr++) {
             Console.Write("U+{0:X4}", Convert.ToUInt16(s[ctr]));
             if (ctr != s.Length - 1) Console.Write(" ");
          } 
          Console.WriteLine(")\n");
       }
    }
    // The example displays the following output:
    //       Length of string: 2 (U+0061 U+0308)
    //       
    //       Length of string: 1 (U+00E4)
    

Die Char Struktur stellt Methoden zum Vergleichen von Char Objekte, konvertieren Sie den Wert des aktuellen Char Objekt zu einem Objekt eines anderen Typs, und bestimmen Sie die Unicode-Kategorie ein Char Objekt:

Aufgabe

Verwenden Sie diese System.Char Methoden

Vergleichen Sie Char Objekte

CompareTo und Equals

Konvertiert einen Codepunkt in eine Zeichenfolge

ConvertFromUtf32

Konvertieren einer Char Objekt oder einem Ersatzzeichenpaar von Char -Objekten, die einen Codepunkt

Für ein einzelnes Zeichen:Convert.ToInt32(Char)

Für ein Ersatzzeichenpaar oder ein Zeichen in einer Zeichenfolge:Char.ConvertToUtf32

Die Unicode-Kategorie eines Zeichens abrufen

GetUnicodeCategory

Bestimmen Sie, ob ein Zeichen in einer bestimmten Unicode-Kategorie, z. B. Ziffern, Buchstaben, Satzzeichen ist, die Zeichen gesteuert, usw.

IsControl, IsDigit, IsHighSurrogate, IsLetter, IsLetterOrDigit, IsLower, IsLowSurrogate, IsNumber, IsPunctuation, IsSeparator, IsSurrogate, IsSurrogatePair, IsSymbol, IsUpper, andIsWhiteSpace

Konvertieren einer Char -Objekt, das eine Zahl in einen numerischen Wert-Typ darstellt.

GetNumericValue

Konvertiert ein Zeichen in einer Zeichenfolge in eine Char Objekt

Parse und TryParse

Konvertieren einer Char -Objekt an eine String Objekt

ToString

Ändern die Groß-/Kleinschreibung einer Char Objekt

ToLower, ToLowerInvariant, ToUpper, und ToUpperInvariant

Wenn ein verwalteter Char Typ, der als Unicode-UTF-8-codierte Codeeinheit dargestellt wird, nicht verwalteten Code übergeben wird, wandelt der Interop-Marshaller den Zeichensatz in ANSI. Können Sie anwenden der DllImportAttribute Attribut Plattform Plattformaufrufdeklarationen und StructLayoutAttribute -Attribut auf eine COM-Interop-Deklaration zu steuern, welcher eine gemarshallte Zeichensatz Char -Typ verwendet.

Im folgenden Codebeispiel wird veranschaulicht einige der Methoden in Char.

using System;

public class CharStructureSample {
	public static void Main() {
		char chA = 'A';
		char ch1 = '1';
		string str = "test string"; 

		Console.WriteLine(chA.CompareTo('B'));			// Output: "-1" (meaning 'A' is 1 less than 'B')
		Console.WriteLine(chA.Equals('A'));				// Output: "True"
		Console.WriteLine(Char.GetNumericValue(ch1));	// Output: "1"
		Console.WriteLine(Char.IsControl('\t'));		// Output: "True"
		Console.WriteLine(Char.IsDigit(ch1));			// Output: "True"
		Console.WriteLine(Char.IsLetter(','));			// Output: "False"
		Console.WriteLine(Char.IsLower('u'));			// Output: "True"
		Console.WriteLine(Char.IsNumber(ch1));			// Output: "True"
		Console.WriteLine(Char.IsPunctuation('.'));		// Output: "True"
		Console.WriteLine(Char.IsSeparator(str, 4));	// Output: "True"
		Console.WriteLine(Char.IsSymbol('+'));			// Output: "True"
		Console.WriteLine(Char.IsWhiteSpace(str, 4));	// Output: "True"
		Console.WriteLine(Char.Parse("S"));				// Output: "S"
		Console.WriteLine(Char.ToLower('M'));			// Output: "m"
		Console.WriteLine('x'.ToString());				// Output: "x"
	}
}

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Alle Member dieses Typs sind threadsicher. Elemente, die angezeigt werden, so ändern Sie den Zustand der Instanz zurückgeben tatsächlich eine neue Instanz mit dem neuen Wert initialisiert. Als müssen mit einem beliebigen anderen Typ Lesen und Schreiben in eine freigegebene Variable, die eine Instanz dieses Typs enthält durch ein Schloss auf Threadsicherheit geschützt werden.

Zurück zum Anfang
Anzeigen: