UTF32Encoding Sınıf

Tanım

Unicode karakterlerinin UTF-32 kodlamalarını temsil eder.

public ref class UTF32Encoding sealed : System::Text::Encoding
public sealed class UTF32Encoding : System.Text.Encoding
[System.Serializable]
public sealed class UTF32Encoding : System.Text.Encoding
type UTF32Encoding = class
    inherit Encoding
[<System.Serializable>]
type UTF32Encoding = class
    inherit Encoding
Public NotInheritable Class UTF32Encoding
Inherits Encoding
Devralma
UTF32Encoding
Öznitelikler

Örnekler

Aşağıdaki örnekte hata algılama etkin ve etkin olmayan nesnelerin davranışı UTF32Encoding gösterilmektedir. Son dört bayt geçersiz bir vekil çifti temsil eden bir bayt dizisi oluşturur; yüksek vekil U+D8FF'yi takip eden U+01FF, düşük vekil aralığın (0xDFFF 0xDC00) dışındadır. Hata algılama olmadan UTF32 kod çözücüsü, geçersiz vekil çifti DEĞİşTİrME KARAKTERİ (U+FFFD) ile değiştirmek için yedek geri dönüş kullanır.

using System;
using System.Text;

public class Example
{
   public static void Main()
   {
     // Create a UTF32Encoding object with error detection enabled.
      var encExc = new UTF32Encoding(! BitConverter.IsLittleEndian, true, true);
      // Create a UTF32Encoding object with error detection disabled.
      var encRepl = new UTF32Encoding(! BitConverter.IsLittleEndian, true, false);

      // Create a byte arrays from a string, and add an invalid surrogate pair, as follows.
      //    Latin Small Letter Z (U+007A)
      //    Latin Small Letter A (U+0061)
      //    Combining Breve (U+0306)
      //    Latin Small Letter AE With Acute (U+01FD)
      //    Greek Small Letter Beta (U+03B2)
      //    a high-surrogate value (U+D8FF)
      //    an invalid low surrogate (U+01FF)
      String s = "za\u0306\u01FD\u03B2";

      // Encode the string using little-endian byte order.
      int index = encExc.GetByteCount(s);
      Byte[] bytes = new Byte[index + 4];
      encExc.GetBytes(s, 0, s.Length, bytes, 0);
      bytes[index] = 0xFF;
      bytes[index + 1] = 0xD8;
      bytes[index + 2] = 0xFF;
      bytes[index + 3] = 0x01;

      // Decode the byte array with error detection.
      Console.WriteLine("Decoding with error detection:");
      PrintDecodedString(bytes, encExc);

      // Decode the byte array without error detection.
      Console.WriteLine("Decoding without error detection:");
      PrintDecodedString(bytes, encRepl);
   }

   // Decode the bytes and display the string.
   public static void PrintDecodedString(Byte[] bytes, Encoding enc)
   {
      try {
         Console.WriteLine("   Decoded string: {0}", enc.GetString(bytes, 0, bytes.Length));
      }
      catch (DecoderFallbackException e) {
         Console.WriteLine(e.ToString());
      }
      Console.WriteLine();
   }
}
// The example displays the following output:
//    Decoding with error detection:
//    System.Text.DecoderFallbackException: Unable to translate bytes [FF][D8][FF][01] at index
//    20 from specified code page to Unicode.
//       at System.Text.DecoderExceptionFallbackBuffer.Throw(Byte[] bytesUnknown, Int32 index)
//       at System.Text.DecoderExceptionFallbackBuffer.Fallback(Byte[] bytesUnknown, Int32 index
//    )
//       at System.Text.DecoderFallbackBuffer.InternalFallback(Byte[] bytes, Byte* pBytes)
//       at System.Text.UTF32Encoding.GetCharCount(Byte* bytes, Int32 count, DecoderNLS baseDeco
//    der)
//       at System.Text.UTF32Encoding.GetString(Byte[] bytes, Int32 index, Int32 count)
//       at Example.PrintDecodedString(Byte[] bytes, Encoding enc)
//
//    Decoding without error detection:
//       Decoded string: zăǽβ�
Imports System.Text

Public Module Example
   Public Sub Main()
      ' Create a UTF32Encoding object with error detection enabled.
      Dim encExc As New UTF32Encoding(Not BitConverter.IsLittleEndian, True, True)
      ' Create a UTF32Encoding object with error detection disabled.
      Dim encRepl As New UTF32Encoding(Not BitConverter.IsLittleEndian, True, False)

      ' Create a byte arrays from a string, and add an invalid surrogate pair, as follows.
      '    Latin Small Letter Z (U+007A)
      '    Latin Small Letter A (U+0061)
      '    Combining Breve (U+0306)
      '    Latin Small Letter AE With Acute (U+01FD)
      '    Greek Small Letter Beta (U+03B2)
      '    a high-surrogate value (U+D8FF)
      '    an invalid low surrogate (U+01FF)
      Dim s As String = "za" & ChrW(&H0306) & ChrW(&H01FD) & ChrW(&H03B2)

      ' Encode the string using little-endian byte order.
      Dim index As Integer = encExc.GetBytecount(s)
      Dim bytes(index + 3) As Byte
      encExc.GetBytes(s, 0, s.Length, bytes, 0)
      bytes(index) = &hFF
      bytes(index + 1) = &hD8
      bytes(index + 2) = &hFF
      bytes(index + 3) = &h01

      ' Decode the byte array with error detection.
      Console.WriteLine("Decoding with error detection:")
      PrintDecodedString(bytes, encExc)

      ' Decode the byte array without error detection.
      Console.WriteLine("Decoding without error detection:")
      PrintDecodedString(bytes, encRepl)
   End Sub

   ' Decode the bytes and display the string.
   Public Sub PrintDecodedString(bytes() As Byte, enc As Encoding)
      Try
         Console.WriteLine("   Decoded string: {0}", enc.GetString(bytes, 0, bytes.Length))
      Catch e As DecoderFallbackException
         Console.WriteLine(e.ToString())
      End Try
      Console.WriteLine()
   End Sub
End Module
' The example displays the following output:
'    Decoding with error detection:
'    System.Text.DecoderFallbackException: Unable to translate bytes [FF][D8][FF][01] at index
'    20 from specified code page to Unicode.
'       at System.Text.DecoderExceptionFallbackBuffer.Throw(Byte[] bytesUnknown, Int32 index)
'       at System.Text.DecoderExceptionFallbackBuffer.Fallback(Byte[] bytesUnknown, Int32 index
'    )
'       at System.Text.DecoderFallbackBuffer.InternalFallback(Byte[] bytes, Byte* pBytes)
'       at System.Text.UTF32Encoding.GetCharCount(Byte* bytes, Int32 count, DecoderNLS baseDeco
'    der)
'       at System.Text.UTF32Encoding.GetString(Byte[] bytes, Int32 index, Int32 count)
'       at Example.PrintDecodedString(Byte[] bytes, Encoding enc)
'
'    Decoding without error detection:
'       Decoded string: zăǽβ�

Aşağıdaki örnek, bir unicode karakter dizesini bir nesne kullanarak UTF32Encoding bayt dizisine kodlar. Bayt dizisi daha sonra veri kaybı olmadığını göstermek için bir dize olarak çözülecek.

using System;
using System.Text;

public class Example
{
    public static void Main()
    {
        // The encoding.
        var enc = new UTF32Encoding();
        
        // Create a string.
        String s = "This string contains two characters " +
                   "with codes outside the ASCII code range: " +
                   "Pi (\u03A0) and Sigma (\u03A3).";
        Console.WriteLine("Original string:");
        Console.WriteLine("   {0}", s);
        
        // Encode the string.
        Byte[] encodedBytes = enc.GetBytes(s);
        Console.WriteLine();
        Console.WriteLine("Encoded bytes:");
        for (int ctr = 0; ctr < encodedBytes.Length; ctr++) {
            Console.Write("[{0:X2}]{1}", encodedBytes[ctr],
                                         (ctr + 1) % 4 == 0 ? " " : "" );
            if ((ctr + 1) % 16 == 0) Console.WriteLine();
        }
        Console.WriteLine();
        
        // Decode bytes back to string.
        // Notice Pi and Sigma characters are still present.
        String decodedString = enc.GetString(encodedBytes);
        Console.WriteLine();
        Console.WriteLine("Decoded string:");
        Console.WriteLine("   {0}", decodedString);
    }
}
// The example displays the following output:
//    Original string:
//       This string contains two characters with codes outside the ASCII code range:
//    Pi (π) and Sigma (Σ).
//
//    Encoded bytes:
//    [54][00][00][00] [68][00][00][00] [69][00][00][00] [73][00][00][00]
//    [20][00][00][00] [73][00][00][00] [74][00][00][00] [72][00][00][00]
//    [69][00][00][00] [6E][00][00][00] [67][00][00][00] [20][00][00][00]
//    [63][00][00][00] [6F][00][00][00] [6E][00][00][00] [74][00][00][00]
//    [61][00][00][00] [69][00][00][00] [6E][00][00][00] [73][00][00][00]
//    [20][00][00][00] [74][00][00][00] [77][00][00][00] [6F][00][00][00]
//    [20][00][00][00] [63][00][00][00] [68][00][00][00] [61][00][00][00]
//    [72][00][00][00] [61][00][00][00] [63][00][00][00] [74][00][00][00]
//    [65][00][00][00] [72][00][00][00] [73][00][00][00] [20][00][00][00]
//    [77][00][00][00] [69][00][00][00] [74][00][00][00] [68][00][00][00]
//    [20][00][00][00] [63][00][00][00] [6F][00][00][00] [64][00][00][00]
//    [65][00][00][00] [73][00][00][00] [20][00][00][00] [6F][00][00][00]
//    [75][00][00][00] [74][00][00][00] [73][00][00][00] [69][00][00][00]
//    [64][00][00][00] [65][00][00][00] [20][00][00][00] [74][00][00][00]
//    [68][00][00][00] [65][00][00][00] [20][00][00][00] [41][00][00][00]
//    [53][00][00][00] [43][00][00][00] [49][00][00][00] [49][00][00][00]
//    [20][00][00][00] [63][00][00][00] [6F][00][00][00] [64][00][00][00]
//    [65][00][00][00] [20][00][00][00] [72][00][00][00] [61][00][00][00]
//    [6E][00][00][00] [67][00][00][00] [65][00][00][00] [3A][00][00][00]
//    [20][00][00][00] [50][00][00][00] [69][00][00][00] [20][00][00][00]
//    [28][00][00][00] [A0][03][00][00] [29][00][00][00] [20][00][00][00]
//    [61][00][00][00] [6E][00][00][00] [64][00][00][00] [20][00][00][00]
//    [53][00][00][00] [69][00][00][00] [67][00][00][00] [6D][00][00][00]
//    [61][00][00][00] [20][00][00][00] [28][00][00][00] [A3][03][00][00]
//    [29][00][00][00] [2E][00][00][00]
//
//    Decoded string:
//       This string contains two characters with codes outside the ASCII code range:
//    Pi (π) and Sigma (Σ).
Imports System.Text

Class Example
    Public Shared Sub Main()
        ' The encoding.
        Dim enc As New UTF32Encoding()
        
        ' Create a string.
        Dim s As String =
            "This string contains two characters " &
            "with codes outside the ASCII code range: " &
            "Pi (" & ChrW(&h03A0) & ") and Sigma (" & ChrW(&h03A3) & ")."
        Console.WriteLine("Original string:")
        Console.WriteLine("   {0}", s)
        
        ' Encode the string.
        Dim encodedBytes As Byte() = enc.GetBytes(s)
        Console.WriteLine()
        Console.WriteLine("Encoded bytes:")
        For ctr As Integer = 0 To encodedBytes.Length - 1
            Console.Write("[{0:X2}]{1}", encodedBytes(ctr),
                                         If((ctr + 1) Mod 4 = 0, " ", "" ))
            If (ctr + 1) Mod 16 = 0 Then Console.WriteLine()
        Next
        Console.WriteLine()
        
        ' Decode bytes back to string.
        ' Notice Pi and Sigma characters are still present.
        Dim decodedString As String = enc.GetString(encodedBytes)
        Console.WriteLine()
        Console.WriteLine("Decoded string:")
        Console.WriteLine("   {0}", decodedString)
    End Sub
End Class
' The example displays the following output:
'    Original string:
'       This string contains two characters with codes outside the ASCII code range:
'    Pi (π) and Sigma (Σ).
'
'    Encoded bytes:
'    [54][00][00][00] [68][00][00][00] [69][00][00][00] [73][00][00][00]
'    [20][00][00][00] [73][00][00][00] [74][00][00][00] [72][00][00][00]
'    [69][00][00][00] [6E][00][00][00] [67][00][00][00] [20][00][00][00]
'    [63][00][00][00] [6F][00][00][00] [6E][00][00][00] [74][00][00][00]
'    [61][00][00][00] [69][00][00][00] [6E][00][00][00] [73][00][00][00]
'    [20][00][00][00] [74][00][00][00] [77][00][00][00] [6F][00][00][00]
'    [20][00][00][00] [63][00][00][00] [68][00][00][00] [61][00][00][00]
'    [72][00][00][00] [61][00][00][00] [63][00][00][00] [74][00][00][00]
'    [65][00][00][00] [72][00][00][00] [73][00][00][00] [20][00][00][00]
'    [77][00][00][00] [69][00][00][00] [74][00][00][00] [68][00][00][00]
'    [20][00][00][00] [63][00][00][00] [6F][00][00][00] [64][00][00][00]
'    [65][00][00][00] [73][00][00][00] [20][00][00][00] [6F][00][00][00]
'    [75][00][00][00] [74][00][00][00] [73][00][00][00] [69][00][00][00]
'    [64][00][00][00] [65][00][00][00] [20][00][00][00] [74][00][00][00]
'    [68][00][00][00] [65][00][00][00] [20][00][00][00] [41][00][00][00]
'    [53][00][00][00] [43][00][00][00] [49][00][00][00] [49][00][00][00]
'    [20][00][00][00] [63][00][00][00] [6F][00][00][00] [64][00][00][00]
'    [65][00][00][00] [20][00][00][00] [72][00][00][00] [61][00][00][00]
'    [6E][00][00][00] [67][00][00][00] [65][00][00][00] [3A][00][00][00]
'    [20][00][00][00] [50][00][00][00] [69][00][00][00] [20][00][00][00]
'    [28][00][00][00] [A0][03][00][00] [29][00][00][00] [20][00][00][00]
'    [61][00][00][00] [6E][00][00][00] [64][00][00][00] [20][00][00][00]
'    [53][00][00][00] [69][00][00][00] [67][00][00][00] [6D][00][00][00]
'    [61][00][00][00] [20][00][00][00] [28][00][00][00] [A3][03][00][00]
'    [29][00][00][00] [2E][00][00][00]
'
'    Decoded string:
'       This string contains two characters with codes outside the ASCII code range:
'    Pi (π) and Sigma (Σ).

Aşağıdaki örnek, kodlanmış baytları bir dosyaya yazması ve bayt akışına bayt sipariş işareti (BOM) ön eki eklemesi dışında, öncekiyle aynı dizeyi kullanır. Ardından dosyayı iki farklı şekilde okur: bir nesne kullanarak StreamReader metin dosyası olarak ve ikili dosya olarak. Beklediğiniz gibi, yeni okunan dizelerin hiçbiri ürün reçetesini içermez.

using System;
using System.IO;
using System.Text;

public class Example
{
    public static void Main()
    {
        // Create a UTF-32 encoding that supports a BOM.
        var enc = new UTF32Encoding();
        
        // A Unicode string with two characters outside an 8-bit code range.
        String s = "This Unicode string has 2 characters " +
                   "outside the ASCII range: \n" +
                   "Pi (\u03A0), and Sigma (\u03A3).";
        Console.WriteLine("Original string:");
        Console.WriteLine(s);
        Console.WriteLine();
        
        // Encode the string.
        Byte[] encodedBytes = enc.GetBytes(s);
        Console.WriteLine("The encoded string has {0} bytes.\n",
                          encodedBytes.Length);

        // Write the bytes to a file with a BOM.
        var fs = new FileStream(@".\UTF32Encoding.txt", FileMode.Create);
        Byte[] bom = enc.GetPreamble();
        fs.Write(bom, 0, bom.Length);
        fs.Write(encodedBytes, 0, encodedBytes.Length);
        Console.WriteLine("Wrote {0} bytes to the file.\n", fs.Length);
        fs.Close();

        // Open the file using StreamReader.
        var sr = new StreamReader(@".\UTF32Encoding.txt");
        String newString = sr.ReadToEnd();
        sr.Close();
        Console.WriteLine("String read using StreamReader:");
        Console.WriteLine(newString);
        Console.WriteLine();
        
        // Open the file as a binary file and decode the bytes back to a string.
        fs = new FileStream(@".\Utf32Encoding.txt", FileMode.Open);
        Byte[] bytes = new Byte[fs.Length];
        fs.Read(bytes, 0, (int)fs.Length);
        fs.Close();

        String decodedString = enc.GetString(bytes);
        Console.WriteLine("Decoded bytes from binary file:");
        Console.WriteLine(decodedString);
    }
}
// The example displays the following output:
//    Original string:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
//
//    The encoded string has 340 bytes.
//
//    Wrote 344 bytes to the file.
//
//    String read using StreamReader:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
//
//    Decoded bytes from binary file:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
Imports System.IO
Imports System.Text

Class Example
    Public Shared Sub Main()
        ' Create a UTF-32 encoding that supports a BOM.
        Dim enc As New UTF32Encoding()
        
        ' A Unicode string with two characters outside an 8-bit code range.
        Dim s As String = _
            "This Unicode string has 2 characters outside the " &
            "ASCII range: " & vbCrLf &
            "Pi (" & ChrW(&h03A0) & "), and Sigma (" & ChrW(&h03A3) & ")."
        Console.WriteLine("Original string:")
        Console.WriteLine(s)
        Console.WriteLine()
        
        ' Encode the string.
        Dim encodedBytes As Byte() = enc.GetBytes(s)
        Console.WriteLine("The encoded string has {0} bytes.",
                          encodedBytes.Length)
        Console.WriteLine()
        
        ' Write the bytes to a file with a BOM.
        Dim fs As New FileStream(".\UTF32Encoding.txt", FileMode.Create)
        Dim bom() As Byte = enc.GetPreamble()
        fs.Write(bom, 0, bom.Length)
        fs.Write(encodedBytes, 0, encodedBytes.Length)
        Console.WriteLine("Wrote {0} bytes to the file.", fs.Length)
        fs.Close()
        Console.WriteLine()
        
        ' Open the file using StreamReader.
        Dim sr As New StreamReader(".\UTF32Encoding.txt")
        Dim newString As String = sr.ReadToEnd()
        sr.Close()
        Console.WriteLine("String read using StreamReader:")
        Console.WriteLine(newString)
        Console.WriteLine()
        
        ' Open the file as a binary file and decode the bytes back to a string.
        fs = new FileStream(".\Utf32Encoding.txt", FileMode.Open)
        Dim bytes(fs.Length - 1) As Byte
        fs.Read(bytes, 0, fs.Length)
        fs.Close()

        Dim decodedString As String = enc.GetString(bytes)
        Console.WriteLine("Decoded bytes from binary file:")
        Console.WriteLine(decodedString)
    End Sub
End Class
' The example displays the following output:
'    Original string:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).
'
'    The encoded string has 344 bytes.
'
'    Wrote 348 bytes to the file.
'
'    String read using StreamReader:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).
'
'    Decoded bytes from binary file:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).

Açıklamalar

Kodlama, bir Unicode karakter kümesini bayt dizisine dönüştürme işlemidir. Kod çözme, kodlanmış bayt dizisini unicode karakter kümesine dönüştürme işlemidir.

Unicode Standardı, desteklenen her betikteki her karaktere bir kod noktası (sayı) atar. Unicode Dönüştürme Biçimi (UTF), bu kod noktasını kodlamanın bir yoludur. Unicode Standardı aşağıdaki UTF'leri kullanır:

  • UTF-8, her kod noktasını bir ile dört baytlık bir sıra olarak temsil eder.

  • UTF-16, her kod noktasını bir ile iki 16 bit tamsayı dizisi olarak temsil eder.

  • UTF-32, her kod noktasını 32 bit tamsayı olarak temsil eder.

UTF'ler ve tarafından System.Textdesteklenen diğer kodlamalar hakkında daha fazla bilgi için bkz. .NET'te Karakter Kodlama.

UTF32Encoding sınıfı bir UTF-32 kodlamasını temsil eder. Kodlayıcı büyük endian bayt sırasını (en önemli bayt önce) veya küçük endian bayt sırasını (en az önemli bayt önce) kullanabilir. Örneğin, Latin Büyük A Harfi (kod noktası U+0041) aşağıdaki gibi serileştirilir (onaltılık olarak):

  • Büyük endian bayt siparişi: 00 00 00 41

  • Küçük endian bayt siparişi: 41 00 00 00

Yerel bayt sırasını kullanarak Unicode karakterleri depolamak genellikle daha verimlidir. Örneğin, Intel bilgisayarlar gibi küçük endian platformlarında küçük endian bayt sırasını kullanmak daha iyidir. UTF32Encoding 12000 (küçük endian bayt sırası) ve 12001 (büyük endian bayt sırası) Windows kod sayfalarına karşılık gelir. yöntemini çağırarak belirli bir mimarinin "endianness"ini BitConverter.IsLittleEndian belirleyebilirsiniz.

İsteğe bağlı olarak nesne, kodlama işleminden UTF32Encoding kaynaklanan bayt dizisine ön eklenebilen bayt dizisi olan bir bayt sırası işareti (BOM) sağlar. Ön derleme bir bayt sipariş işareti (BOM) içeriyorsa, kod çözücüye bayt sırasını ve bir bayt dizisinin dönüşüm biçimini veya UTF'sini belirlemesine yardımcı olur.

UTF32Encoding Örnek bir BOM sağlayacak şekilde yapılandırılmışsa yöntemini çağırarak GetPreamble bunu alabilirsiniz; aksi takdirde yöntem boş bir dizi döndürür. Bir UTF32Encoding nesne BOM desteği için yapılandırılsa bile, kodlanmış bayt akışının başına uygun şekilde BOM'u eklemeniz gerektiğini unutmayın; sınıfın UTF32Encoding kodlama yöntemleri bunu otomatik olarak yapmaz.

Dikkat

Hata algılamayı etkinleştirmek ve sınıf örneğini daha güvenli hale getirmek için oluşturucuyu çağırarak ve bağımsız değişkenini throwOnInvalidBytestrueolarak ayarlayarak bir UTF32Encoding nesne örneği UTF32Encoding(Boolean, Boolean, Boolean) oluşturmalısınız. Hata algılama ile geçersiz bir karakter veya bayt dizisi algılayan bir yöntem bir ArgumentException özel durum oluşturur. Hata algılama olmadan özel durum oluşmaz ve geçersiz dizi genel olarak yoksayılır.

Bir UTF32Encoding nesnenin bayt sipariş işareti (BOM) sağlamasını isteyip istemediğinize, büyük endian veya küçük endian kodlaması isteyip istemediğinize ve hata algılamayı etkinleştirmek isteyip istemediğinize bağlı olarak, bir nesnenin örneğini çeşitli yollarla oluşturabilirsiniz. Aşağıdaki tabloda, oluşturucular UTF32Encoding ve Encoding nesne UnicodeEncoding döndüren özellikler listelemektedir.

Üye Bayt Sırası Ürün reçetesi Hata algılama
Encoding.UTF32 Küçük endian Evet Hayır (Yedek geri dönüş)
UTF32Encoding.UTF32Encoding() Küçük endian Evet Hayır (Yedek geri dönüş)
UTF32Encoding.UTF32Encoding(Boolean, Boolean) Configurable Configurable Hayır (Yedek geri dönüş)
UTF32Encoding.UTF32Encoding(Boolean, Boolean, Boolean) Configurable Configurable Configurable

GetByteCount yöntemi, kaç bayt sonucunun bir Unicode karakter kümesini kodlamaya GetBytes neden olduğunu belirler ve yöntem gerçek kodlamayı gerçekleştirir.

Benzer şekilde yöntemi, GetCharCount bayt dizisinin çözülmesiyle sonuçlanan karakter sayısını belirler ve GetChars ve GetString yöntemleri gerçek kod çözme işlemini gerçekleştirir.

Birden çok bloğu kapsayan verileri (100.000 karakterlik kesimlerde kodlanmış 1 milyon karakterlik dize gibi) kodlarken veya kodunu çözerken durum bilgilerini kaydedebilen kodlayıcı veya kod çözücü için sırasıyla ve GetDecoder özelliklerini kullanınGetEncoder.

Oluşturucular

Name Description
UTF32Encoding()

UTF32Encoding sınıfının yeni bir örneğini başlatır.

UTF32Encoding(Boolean, Boolean, Boolean)

UTF32Encoding sınıfının yeni bir örneğini başlatır. Parametreler, büyük endian bayt sırasının kullanılıp kullanılmayacağını, Unicode bayt sırası işareti sağlanıp sağlanmayacağını ve geçersiz kodlama algılandığında özel durum oluşturup oluşturmayacağını belirtir.

UTF32Encoding(Boolean, Boolean)

UTF32Encoding sınıfının yeni bir örneğini başlatır. Parametreler, büyük endian bayt sırasının kullanılıp kullanılmayacağını ve yöntemin GetPreamble() Unicode bayt sırası işareti döndürip döndürmediğini belirtir.

Özellikler

Name Description
BodyName

Türetilmiş bir sınıfta geçersiz kılındığında, posta aracısı gövde etiketleriyle kullanılabilen geçerli kodlama için bir ad alır.

(Devralındığı yer: Encoding)
CodePage

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli Encodingöğesinin kod sayfası tanımlayıcısını alır.

(Devralındığı yer: Encoding)
DecoderFallback

Geçerli DecoderFallback nesnenin Encoding nesnesini alır veya ayarlar.

(Devralındığı yer: Encoding)
EncoderFallback

Geçerli EncoderFallback nesnenin Encoding nesnesini alır veya ayarlar.

(Devralındığı yer: Encoding)
EncodingName

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın okunabilir açıklamasını alır.

(Devralındığı yer: Encoding)
HeaderName

Türetilmiş bir sınıfta geçersiz kılındığında, posta aracısı üst bilgi etiketleriyle kullanılabilecek geçerli kodlama için bir ad alır.

(Devralındığı yer: Encoding)
IsBrowserDisplay

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın tarayıcı istemcileri tarafından içeriği görüntülemek için kullanılıp kullanılamayacağını belirten bir değer alır.

(Devralındığı yer: Encoding)
IsBrowserSave

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın içeriği kaydetmek için tarayıcı istemcileri tarafından kullanılıp kullanılamayacağını belirten bir değer alır.

(Devralındığı yer: Encoding)
IsMailNewsDisplay

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın posta ve haber istemcileri tarafından içerik görüntülemek için kullanılıp kullanılamayacağını belirten bir değer alır.

(Devralındığı yer: Encoding)
IsMailNewsSave

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın içeriği kaydetmek için posta ve haber istemcileri tarafından kullanılıp kullanılamayacağını belirten bir değer alır.

(Devralındığı yer: Encoding)
IsReadOnly

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın salt okunur olup olmadığını belirten bir değer alır.

(Devralındığı yer: Encoding)
IsSingleByte

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamanın tek bayt kod noktaları kullanıp kullanmadığını belirten bir değer alır.

(Devralındığı yer: Encoding)
Preamble

Bu nesne bir tane sağlamak üzere yapılandırılmışsa UTF-32 biçiminde kodlanmış bir Unicode bayt sırası işareti alır.

Preamble

Türetilmiş bir sınıfta geçersiz kılındığında, kullanılan kodlamayı belirten bayt dizisini içeren bir span döndürür.

(Devralındığı yer: Encoding)
WebName

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlama için İnternet Atanan Numaralar Yetkilisi'ne (IANA) kaydedilen adı alır.

(Devralındığı yer: Encoding)
WindowsCodePage

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli kodlamaya en yakın olan Windows işletim sistemi kodu sayfasını alır.

(Devralındığı yer: Encoding)

Yöntemler

Name Description
Clone()

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli Encoding nesnenin sığ bir kopyasını oluşturur.

(Devralındığı yer: Encoding)
Equals(Object)

Belirtilen Object nesnenin geçerli UTF32Encoding nesneye eşit olup olmadığını belirler.

GetByteCount(Char[], Int32, Int32)

Belirtilen karakter dizisinden bir karakter kümesi kodlayarak üretilen bayt sayısını hesaplar.

GetByteCount(Char[])

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen karakter dizisindeki tüm karakterleri kodlayarak üretilen bayt sayısını hesaplar.

(Devralındığı yer: Encoding)
GetByteCount(Char*, Int32)

Belirtilen karakter işaretçisinde başlayan bir karakter kümesini kodlayarak üretilen bayt sayısını hesaplar.

GetByteCount(ReadOnlySpan<Char>)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen karakter aralığındaki karakterleri kodlayarak üretilen bayt sayısını hesaplar.

(Devralındığı yer: Encoding)
GetByteCount(String, Int32, Int32)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen dizeden bir karakter kümesi kodlayarak üretilen bayt sayısını hesaplar.

(Devralındığı yer: Encoding)
GetByteCount(String)

Belirtilen Stringiçindeki karakterleri kodlayarak üretilen bayt sayısını hesaplar.

GetBytes(Char[], Int32, Int32, Byte[], Int32)

Belirtilen karakter dizisinden bir dizi karakteri belirtilen bayt dizisine kodlar.

GetBytes(Char[], Int32, Int32)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen karakter dizisindeki bir karakter kümesini bayt dizisine kodlar.

(Devralındığı yer: Encoding)
GetBytes(Char[])

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen karakter dizisindeki tüm karakterleri bayt dizisine kodlar.

(Devralındığı yer: Encoding)
GetBytes(Char*, Int32, Byte*, Int32)

Belirtilen karakter işaretçisinde başlayan bir karakter kümesini, belirtilen bayt işaretçisinde başlayan bir bayt dizisine kodlar.

GetBytes(ReadOnlySpan<Char>, Span<Byte>)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen salt okunur yayılma alanından bir dizi karakter bayt aralığına kodlar.

(Devralındığı yer: Encoding)
GetBytes(String, Int32, Int32, Byte[], Int32)

Belirtilenden bir dizi karakteri belirtilen String bayt dizisine kodlar.

GetBytes(String, Int32, Int32)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen dizede tarafından count belirtilen karakter sayısını belirtilenden başlayarak bayt dizisine indexkodlar.

(Devralındığı yer: Encoding)
GetBytes(String)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen dizedeki tüm karakterleri bir bayt dizisine kodlar.

(Devralındığı yer: Encoding)
GetCharCount(Byte[], Int32, Int32)

Belirtilen bayt dizisinden bir bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar.

GetCharCount(Byte[])

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bayt dizisindeki tüm baytların kodunu çözerek üretilen karakter sayısını hesaplar.

(Devralındığı yer: Encoding)
GetCharCount(Byte*, Int32)

Belirtilen bayt işaretçisinde başlayan bir bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar.

GetCharCount(ReadOnlySpan<Byte>)

Türetilmiş bir sınıfta geçersiz kılındığında, sağlanan salt okunur bayt aralığının kodunu çözerek üretilen karakter sayısını hesaplar.

(Devralındığı yer: Encoding)
GetChars(Byte[], Int32, Int32, Char[], Int32)

Belirtilen bayt dizisinden belirtilen karakter dizisine bayt dizisinin kodunu çözer.

GetChars(Byte[], Int32, Int32)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bayt dizisindeki bayt dizisinin kodunu bir karakter kümesine çözer.

(Devralındığı yer: Encoding)
GetChars(Byte[])

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bayt dizisindeki tüm baytların kodunu bir karakter kümesine çözer.

(Devralındığı yer: Encoding)
GetChars(Byte*, Int32, Char*, Int32)

Belirtilen bayt işaretçisinde başlayan bayt dizisinin kodunu, belirtilen karakter işaretçisinde başlayan bir dizi karaktere dönüştürür.

GetChars(ReadOnlySpan<Byte>, Span<Char>)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen salt okunur bayt aralığındaki tüm baytların kodunu bir karakter aralığına çözer.

(Devralındığı yer: Encoding)
GetDecoder()

UTF-32 kodlanmış bayt dizisini Unicode karakter dizisine dönüştüren bir kod çözücü alır.

GetEncoder()

Unicode karakter dizisini UTF-32 kodlanmış bayt dizisine dönüştüren bir kodlayıcı alır.

GetHashCode()

Geçerli örneğin karma kodunu döndürür.

GetMaxByteCount(Int32)

Belirtilen karakter sayısını kodlayarak üretilen en fazla bayt sayısını hesaplar.

GetMaxCharCount(Int32)

Belirtilen bayt sayısının kodunu çözerek üretilen en fazla karakter sayısını hesaplar.

GetPreamble()

Nesne bir tane sağlamak üzere yapılandırılmışsa UTF32Encoding UTF-32 biçiminde kodlanmış bir Unicode bayt sırası işareti döndürür.

GetString(Byte[], Int32, Int32)

Bayt dizisinden dizeye bayt aralığının kodunu çözer.

GetString(Byte[])

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bayt dizisindeki tüm baytların kodunu bir dizeye çözer.

(Devralındığı yer: Encoding)
GetString(Byte*, Int32)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bir adresten başlayan belirtilen sayıda bayt kodunu bir dizeye çözer.

(Devralındığı yer: Encoding)
GetString(ReadOnlySpan<Byte>)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bayt aralığındaki tüm baytların kodunu bir dizeye çözer.

(Devralındığı yer: Encoding)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
IsAlwaysNormalized()

Varsayılan normalleştirme formunu kullanarak geçerli kodlamanın her zaman normalleştirilip normalleştirilmediğini belirten bir değer alır.

(Devralındığı yer: Encoding)
IsAlwaysNormalized(NormalizationForm)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen normalleştirme formunu kullanarak geçerli kodlamanın her zaman normalleştirilip normalleştirilmediğini belirten bir değer alır.

(Devralındığı yer: Encoding)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
TryGetBytes(ReadOnlySpan<Char>, Span<Byte>, Int32)

Hedef yeterince büyükse, belirtilen salt okunur yayılma alanından bir dizi karakter içeren bayt aralığına kodlar.

(Devralındığı yer: Encoding)
TryGetChars(ReadOnlySpan<Byte>, Span<Char>, Int32)

Hedef yeterince büyükse, belirtilen salt okunur yayılma alanından bir dizi bayt karakterine kod çözer.

(Devralındığı yer: Encoding)

Uzantı Metotları

Name Description
GetBytes(Encoding, ReadOnlySequence<Char>, IBufferWriter<Byte>)

Belirtilen ReadOnlySequence<T>byteöğesini kullanarak kodunu s olarak Encoding çözer ve sonucu öğesine writeryazar.

GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>)

Belirtilen ReadOnlySequence<T> öğesini kullanarak öğesini s byteolarak Encoding kodlar ve sonucu olarak bytesdöndürür.

GetBytes(Encoding, ReadOnlySequence<Char>)

Belirtilen ReadOnlySequence<T> öğesini kullanarak bir Byte diziye kodlar Encoding.

GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>)

Belirtilen ReadOnlySpan<T> öğesini kullanarak byte belirtilenleri olarak Encodingkodlar ve sonucu öğesine writeryazar.

GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>)

Belirtilen ReadOnlySequence<T>charöğesini kullanarak kodunu s olarak Encoding çözer ve sonucu öğesine writeryazar.

GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>)

Belirtilen ReadOnlySequence<T>charöğesini kullanarak öğesinin kodunu s olarak Encoding çözer ve sonucu olarak charsçıkartır.

GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>)

Belirtilen ReadOnlySpan<T>charöğesini kullanarak kodunu s olarak Encoding çözer ve sonucu öğesine writeryazar.

GetString(Encoding, ReadOnlySequence<Byte>)

Belirtilen kodunu, belirtilen ReadOnlySequence<T> kullanarak olarak String çözer Encoding.

Şunlara uygulanır

Ayrıca bkz.