Encoding Klasa

Definicja

Reprezentuje kodowanie znaków.Represents a character encoding.

public ref class Encoding abstract
public ref class Encoding abstract : ICloneable
public abstract class Encoding
public abstract class Encoding : ICloneable
[System.Serializable]
public abstract class Encoding
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public abstract class Encoding : ICloneable
type Encoding = class
type Encoding = class
    interface ICloneable
Public MustInherit Class Encoding
Public MustInherit Class Encoding
Implements ICloneable
Dziedziczenie
Encoding
Pochodne
Atrybuty
Implementuje

Przykłady

Poniższy przykład konwertuje ciąg z jednego kodowania na inny.The following example converts a string from one encoding to another.

Uwaga

Tablica Byte [] jest jedynym typem w tym przykładzie, który zawiera zakodowane dane.The byte[] array is the only type in this example that contains the encoded data. Typy typu char i String platformy .NET są same w formacie Unicode, więc wywołanie GetChars dekoduje dane z powrotem do formatu Unicode.The .NET Char and String types are themselves Unicode, so the GetChars call decodes the data back to Unicode.

using namespace System;
using namespace System::Text;

int main()
{
   String^ unicodeString = "This string contains the unicode character Pi (\u03a0)";
   
   // Create two different encodings.
   Encoding^ ascii = Encoding::ASCII;
   Encoding^ unicode = Encoding::Unicode;
   
   // Convert the string into a byte array.
   array<Byte>^unicodeBytes = unicode->GetBytes( unicodeString );
   
   // Perform the conversion from one encoding to the other.
   array<Byte>^asciiBytes = Encoding::Convert( unicode, ascii, unicodeBytes );
   
   // Convert the new Byte into[] a char and[] then into a string.
   array<Char>^asciiChars = gcnew array<Char>(ascii->GetCharCount( asciiBytes, 0, asciiBytes->Length ));
   ascii->GetChars( asciiBytes, 0, asciiBytes->Length, asciiChars, 0 );
   String^ asciiString = gcnew String( asciiChars );
   
   // Display the strings created before and after the conversion.
   Console::WriteLine( "Original String*: {0}", unicodeString );
   Console::WriteLine( "Ascii converted String*: {0}", asciiString );
}
// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)
using System;
using System.Text;

class Example
{
   static void Main()
   {
      string unicodeString = "This string contains the unicode character Pi (\u03a0)";

      // Create two different encodings.
      Encoding ascii = Encoding.ASCII;
      Encoding unicode = Encoding.Unicode;

      // Convert the string into a byte array.
      byte[] unicodeBytes = unicode.GetBytes(unicodeString);

      // Perform the conversion from one encoding to the other.
      byte[] asciiBytes = Encoding.Convert(unicode, ascii, unicodeBytes);
         
      // Convert the new byte[] into a char[] and then into a string.
      char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
      string asciiString = new string(asciiChars);

      // Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString);
      Console.WriteLine("Ascii converted string: {0}", asciiString);
   }
}
// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)
Imports System.Text

Class Example
   Shared Sub Main()
      Dim unicodeString As String = "This string contains the unicode character Pi (" & ChrW(&H03A0) & ")"

      ' Create two different encodings.
      Dim ascii As Encoding = Encoding.ASCII
      Dim unicode As Encoding = Encoding.Unicode

      ' Convert the string into a byte array.
      Dim unicodeBytes As Byte() = unicode.GetBytes(unicodeString)

      ' Perform the conversion from one encoding to the other.
      Dim asciiBytes As Byte() = Encoding.Convert(unicode, ascii, unicodeBytes)

      ' Convert the new byte array into a char array and then into a string.
      Dim asciiChars(ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)-1) As Char
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0)
      Dim asciiString As New String(asciiChars)

      ' Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString)
      Console.WriteLine("Ascii converted string: {0}", asciiString)
   End Sub
End Class
' The example displays the following output:
'    Original string: This string contains the unicode character Pi (Π)
'    Ascii converted string: This string contains the unicode character Pi (?)

Uwagi

Kodowanie jest procesem przekształcania zestawu znaków Unicode w sekwencję bajtów.Encoding is the process of transforming a set of Unicode characters into a sequence of bytes. Natomiast dekodowanie jest procesem przekształcania sekwencji zakodowanych bajtów na zestaw znaków Unicode.In contrast, decoding is the process of transforming a sequence of encoded bytes into a set of Unicode characters. Aby uzyskać informacje na temat formatów transformacji Unicode (UTFs) i innych kodowań obsługiwanych przez Encoding, zobacz kodowanie znaków w programie .NET.For information about the Unicode Transformation Formats (UTFs) and other encodings supported by Encoding, see Character Encoding in .NET.

Należy pamiętać, że Encoding jest przeznaczony do działania na znaki Unicode zamiast dowolnych danych binarnych, takich jak tablice bajtowe.Note that Encoding is intended to operate on Unicode characters instead of arbitrary binary data, such as byte arrays. Jeśli musisz zakodować dowolne dane binarne do tekstu, Użyj protokołu takiego jak UUENCODE, który jest implementowany przez metody, takie jak Convert.ToBase64CharArray.If you must encode arbitrary binary data into text, you should use a protocol such as uuencode, which is implemented by methods such as Convert.ToBase64CharArray.

Platforma .NET udostępnia następujące implementacje klasy Encoding do obsługi bieżących kodowań Unicode i innych kodowań:.NET provides the following implementations of the Encoding class to support current Unicode encodings and other encodings:

  • ASCIIEncoding koduje znaki Unicode jako pojedyncze 7-bitowe znaki ASCII.ASCIIEncoding encodes Unicode characters as single 7-bit ASCII characters. To kodowanie obsługuje tylko wartości znakowe między literami U + 0000 i U + 007F.This encoding only supports character values between U+0000 and U+007F. Strona kodowa 20127.Code page 20127. Dostępne również za pomocą właściwości ASCII.Also available through the ASCII property.

  • UTF7Encoding koduje znaki Unicode przy użyciu kodowania UTF-7.UTF7Encoding encodes Unicode characters using the UTF-7 encoding. To kodowanie obsługuje wszystkie wartości znaków Unicode.This encoding supports all Unicode character values. Strona kodowa 65000.Code page 65000. Dostępne również za pomocą właściwości UTF7.Also available through the UTF7 property.

  • UTF8Encoding koduje znaki Unicode przy użyciu kodowania UTF-8.UTF8Encoding encodes Unicode characters using the UTF-8 encoding. To kodowanie obsługuje wszystkie wartości znaków Unicode.This encoding supports all Unicode character values. Strona kodowa 65001.Code page 65001. Dostępne również za pomocą właściwości UTF8.Also available through the UTF8 property.

  • UnicodeEncoding koduje znaki Unicode przy użyciu kodowania UTF-16.UnicodeEncoding encodes Unicode characters using the UTF-16 encoding. Obsługiwane są zarówno zamówienia little endian, jak i big endian bajty.Both little endian and big endian byte orders are supported. Dostępne również za pomocą właściwości Unicode i właściwości BigEndianUnicode.Also available through the Unicode property and the BigEndianUnicode property.

  • UTF32Encoding koduje znaki Unicode przy użyciu kodowania UTF-32.UTF32Encoding encodes Unicode characters using the UTF-32 encoding. Obsługiwane są zarówno little endian (strona kodowa 12000), jak i big endian (strona kodowa 12001) kolejność bajtów.Both little endian (code page 12000) and big endian (code page 12001) byte orders are supported. Dostępne również za pomocą właściwości UTF32.Also available through the UTF32 property.

Klasa Encoding jest przeznaczona głównie do konwersji między różnymi kodowania i Unicode.The Encoding class is primarily intended to convert between different encodings and Unicode. Często jedną z pochodnych klas Unicode jest właściwy wybór dla aplikacji.Often one of the derived Unicode classes is the correct choice for your app.

Użyj metody GetEncoding, aby uzyskać inne kodowania, i Wywołaj metodę GetEncodings, aby uzyskać listę wszystkich kodowań.Use the GetEncoding method to obtain other encodings, and call the GetEncodings method to get a list of all encodings.

W poniższej tabeli przedstawiono kodowanie obsługiwane przez .NET Framework i .NET Core.The following table lists the encodings supported by .NET Framework and .NET Core. Wyświetla numer strony kodowej i wartości EncodingInfo.Name kodowania i właściwości EncodingInfo.DisplayName.It lists each encoding's code page number and the values of the encoding's EncodingInfo.Name and EncodingInfo.DisplayName properties. Znacznik wyboru w kolumnach obsługa .NET Framework i Obsługa platformy .NET Core wskazuje, że strona kodowa jest natywnie obsługiwana przez implementację platformy .NET, niezależnie od podstawowej platformy.A check mark in the .NET Framework support and .NET Core support columns indicates that the code page is natively supported by that .NET implementation, regardless of the underlying platform. W przypadku .NET Framework dostępność innych kodowań wymienionych w tabeli zależy od systemu operacyjnego.For .NET Framework, the availability of other encodings listed in the table depends on the operating system. W przypadku platformy .NET Core inne kodowania są dostępne za pomocą klasy System.Text.CodePagesEncodingProvider lub poprzez pochodną klasy System.Text.EncodingProvider.For .NET Core, other encodings are available by using the System.Text.CodePagesEncodingProvider class or by deriving from the System.Text.EncodingProvider class.

Uwaga

Strony kodowe, których właściwość EncodingInfo.Name odnosi się do normy międzynarodowej, niekoniecznie są zgodne z tym standardem.Code pages whose EncodingInfo.Name property corresponds to an international standard do not necessarily comply in full with that standard.

Strona kodowaCode page Name (Nazwa)Name Nazwa wyświetlanaDisplay name Obsługa .NET Framework.NET Framework support Obsługa platformy .NET Core.NET Core support
3737 IBM037IBM037 IBM EBCDIC (US-Canada)IBM EBCDIC (US-Canada)
437437 IBM437IBM437 Stany Zjednoczone OEMOEM United States
500500 IBM500IBM500 IBM EBCDIC (międzynarodowy)IBM EBCDIC (International)
708708 ASMO-708ASMO-708 Arabski (ASMO 708)Arabic (ASMO 708)
720720 DOS-720DOS-720 Arabski (DOS)Arabic (DOS)
737737 ibm737ibm737 Grecki (DOS)Greek (DOS)
775775 ibm775ibm775 Bałtycki (DOS)Baltic (DOS)
850850 ibm850ibm850 Europa Zachodnia (DOS)Western European (DOS)
852852 ibm852ibm852 Europa Środkowa (DOS)Central European (DOS)
855855 IBM855IBM855 OEM CyrillicOEM Cyrillic
857857 ibm857ibm857 Turecki (DOS)Turkish (DOS)
858858 IBM00858IBM00858 OEM — wielojęzyczny Latin IOEM Multilingual Latin I
860860 IBM860IBM860 Portugalski (DOS)Portuguese (DOS)
861861 ibm861ibm861 Islandzki (DOS)Icelandic (DOS)
862862 DOS-862DOS-862 Hebrajski (DOS)Hebrew (DOS)
863863 IBM863IBM863 Francuski kanadyjski (DOS)French Canadian (DOS)
864864 IBM864IBM864 Arabski (864)Arabic (864)
865865 IBM865IBM865 Nordyckie (DOS)Nordic (DOS)
866866 cp866cp866 Cyrylica (DOS)Cyrillic (DOS)
869869 ibm869ibm869 Grecki, nowoczesny (DOS)Greek, Modern (DOS)
870870 IBM870IBM870 IBM EBCDIC (wielojęzyczny Latin-2)IBM EBCDIC (Multilingual Latin-2)
874874 windows-874windows-874 Tajski (Windows)Thai (Windows)
875875 cp875cp875 IBM EBCDIC (grecki współczesny)IBM EBCDIC (Greek Modern)
932932 shift_jisshift_jis Japoński (Shift-JIS)Japanese (Shift-JIS)
936936 gb2312gb2312 Chiński uproszczony (GB2312)Chinese Simplified (GB2312)
949949 ks_c_5601-1987ks_c_5601-1987 KoreańskiKorean
950950 big5big5 Chiński tradycyjny (BIG5)Chinese Traditional (Big5)
10261026 IBM1026IBM1026 IBM EBCDIC (turecki Latin-5)IBM EBCDIC (Turkish Latin-5)
10471047 IBM01047IBM01047 IBM Latin-1IBM Latin-1
11401140 IBM01140IBM01140 IBM EBCDIC (USA-Kanada-euro)IBM EBCDIC (US-Canada-Euro)
11411141 IBM01141IBM01141 IBM EBCDIC (Niemcy-euro)IBM EBCDIC (Germany-Euro)
11421142 IBM01142IBM01142 IBM EBCDIC (Dania-Norwegia-Euro)IBM EBCDIC (Denmark-Norway-Euro)
11431143 IBM01143IBM01143 IBM EBCDIC (Finlandia-Szwecja-euro)IBM EBCDIC (Finland-Sweden-Euro)
11441144 IBM01144IBM01144 IBM EBCDIC (Włochy-euro)IBM EBCDIC (Italy-Euro)
11451145 IBM01145IBM01145 IBM EBCDIC (Hiszpania-euro)IBM EBCDIC (Spain-Euro)
11461146 IBM01146IBM01146 IBM EBCDIC (UK-euro)IBM EBCDIC (UK-Euro)
11471147 IBM01147IBM01147 IBM EBCDIC (Francja-euro)IBM EBCDIC (France-Euro)
11481148 IBM01148IBM01148 IBM EBCDIC (Międzynarodowy-euro)IBM EBCDIC (International-Euro)
11491149 IBM01149IBM01149 IBM EBCDIC (islandzki-Euro)IBM EBCDIC (Icelandic-Euro)
12001200 UTF-16utf-16 UnicodeUnicode
12011201 unicodeFFFEunicodeFFFE Unicode (big endian)Unicode (Big endian)
12501250 windows-1250windows-1250 Europa Środkowa (Windows)Central European (Windows)
12511251 windows-1251windows-1251 Cyrylica (Windows)Cyrillic (Windows)
12521252 Windows-1252Windows-1252 Europa Zachodnia (system Windows)Western European (Windows)
12531253 windows-1253windows-1253 Grecki (Windows)Greek (Windows)
12541254 windows-1254windows-1254 Turecki (Windows)Turkish (Windows)
12551255 windows-1255windows-1255 Hebrajski (Windows)Hebrew (Windows)
12561256 windows-1256windows-1256 Arabski (Windows)Arabic (Windows)
12571257 windows-1257windows-1257 Bałtycki (Windows)Baltic (Windows)
12581258 windows-1258windows-1258 Wietnamski (Windows)Vietnamese (Windows)
13611361 JohabJohab Koreański (Johab)Korean (Johab)
10 00010000 Macmacintosh Europa Zachodnia (Mac)Western European (Mac)
1000110001 x-Mac — japońskix-mac-japanese Japoński (Mac)Japanese (Mac)
1000210002 x-mac-chinesetradx-mac-chinesetrad Chiński tradycyjny (Mac)Chinese Traditional (Mac)
1000310003 x-mac-koreanx-mac-korean Koreański (Mac)Korean (Mac)
1000410004 x-mac-arabicx-mac-arabic Arabski (Mac)Arabic (Mac)
1000510005 x-mac-hebrewx-mac-hebrew Hebrajski (Mac)Hebrew (Mac)
1000610006 x-Mac — greckix-mac-greek Grecki (Mac)Greek (Mac)
1000710007 x-mac-cyrillicx-mac-cyrillic Cyrylica (Mac)Cyrillic (Mac)
1000810008 x-mac-chinesesimpx-mac-chinesesimp Chiński uproszczony (Mac)Chinese Simplified (Mac)
1001010010 x-Mac — rumuńskix-mac-romanian Rumuński (Mac)Romanian (Mac)
1001710017 x-mac-ukrainianx-mac-ukrainian Ukraiński (Mac)Ukrainian (Mac)
1002110021 x-Mac — tajskix-mac-thai Tajski (Mac)Thai (Mac)
1002910029 x-Mac-CEx-mac-ce Europa Środkowa (Mac)Central European (Mac)
1007910079 x-mac-icelandicx-mac-icelandic Islandzki (Mac)Icelandic (Mac)
1008110081 x-mac-turkishx-mac-turkish Turecki (Mac)Turkish (Mac)
1008210082 x-Mac-chorwackix-mac-croatian Chorwacki (Mac)Croatian (Mac)
1200012000 UTF-32utf-32 Unicode (UTF-32)Unicode (UTF-32)
1200112001 utf-32BEutf-32BE Unicode (big endian UTF-32)Unicode (UTF-32 Big endian)
2000020000 x-Chinese-CNSx-Chinese-CNS Chiński tradycyjny (CNS)Chinese Traditional (CNS)
2000120001 x-cp20001x-cp20001 TCA TajwanTCA Taiwan
2000220002 x-Chinese-Etenx-Chinese-Eten Chiński tradycyjny (eTEN)Chinese Traditional (Eten)
2000320003 x-cp20003x-cp20003 IBM5550 TajwanIBM5550 Taiwan
2000420004 x-cp20004x-cp20004 Teletekst — TajwanTeleText Taiwan
2000520005 x-cp20005x-cp20005 Wang TajwanWang Taiwan
2010520105 x-IA5x-IA5 Europa Zachodnia (IA5)Western European (IA5)
2010620106 x-IA5-niemieckix-IA5-German Niemiecki (IA5)German (IA5)
2010720107 x-IA5-szwedzkix-IA5-Swedish Szwedzki (IA5)Swedish (IA5)
2010820108 x-IA5-Norwegianx-IA5-Norwegian Norweski (IA5)Norwegian (IA5)
2012720127 us-asciius-ascii US-ASCIIUS-ASCII
2026120261 x-cp20261x-cp20261 T. 61T.61
2026920269 x-cp20269x-cp20269 ISO-6937ISO-6937
2027320273 IBM273IBM273 IBM EBCDIC (Niemcy)IBM EBCDIC (Germany)
2027720277 IBM277IBM277 IBM EBCDIC (Dania-Norwegia)IBM EBCDIC (Denmark-Norway)
2027820278 IBM278IBM278 IBM EBCDIC (Finlandia-Szwecja)IBM EBCDIC (Finland-Sweden)
2028020280 IBM280IBM280 IBM EBCDIC (Włochy)IBM EBCDIC (Italy)
2028420284 IBM284IBM284 IBM EBCDIC (Hiszpania)IBM EBCDIC (Spain)
2028520285 IBM285IBM285 IBM EBCDIC (UK)IBM EBCDIC (UK)
2029020290 IBM290IBM290 IBM EBCDIC (japoński katakana)IBM EBCDIC (Japanese katakana)
2029720297 IBM297IBM297 IBM EBCDIC (Francja)IBM EBCDIC (France)
2042020420 IBM420IBM420 IBM EBCDIC (arabski)IBM EBCDIC (Arabic)
2042320423 IBM423IBM423 IBM EBCDIC (grecki)IBM EBCDIC (Greek)
2042420424 IBM424IBM424 IBM EBCDIC (hebrajski)IBM EBCDIC (Hebrew)
2083320833 x-EBCDIC-KoreanExtendedx-EBCDIC-KoreanExtended IBM EBCDIC (koreański rozszerzony)IBM EBCDIC (Korean Extended)
2083820838 IBM — tajskiIBM-Thai IBM EBCDIC (tajski)IBM EBCDIC (Thai)
2086620866 KOI8-rkoi8-r Cyrylica (KOI8-R)Cyrillic (KOI8-R)
2087120871 IBM871IBM871 IBM EBCDIC (islandzki)IBM EBCDIC (Icelandic)
2088020880 IBM880IBM880 IBM EBCDIC (cyrylica rosyjski)IBM EBCDIC (Cyrillic Russian)
2090520905 IBM905IBM905 IBM EBCDIC (turecki)IBM EBCDIC (Turkish)
2092420924 IBM00924IBM00924 IBM Latin-1IBM Latin-1
2093220932 EUC-JPEUC-JP Japoński (JIS 0208-1990 i 0212-1990)Japanese (JIS 0208-1990 and 0212-1990)
2093620936 x-cp20936x-cp20936 Chiński uproszczony (GB2312-80)Chinese Simplified (GB2312-80)
2094920949 x-cp20949x-cp20949 Wansung koreańskiKorean Wansung
2102521025 cp1025cp1025 IBM EBCDIC (Serbski Cyrylica — bułgarski)IBM EBCDIC (Cyrillic Serbian-Bulgarian)
2186621866 KOI8-ukoi8-u Cyrylica (KOI8-U)Cyrillic (KOI8-U)
2859128591 ISO-8859-1iso-8859-1 Europa Zachodnia (ISO)Western European (ISO)
2859228592 ISO-8859-2iso-8859-2 Europa Środkowa (ISO)Central European (ISO)
2859328593 ISO-8859-3iso-8859-3 Łaciński 3 (ISO)Latin 3 (ISO)
2859428594 ISO-8859-4iso-8859-4 Bałtycki (ISO)Baltic (ISO)
2859528595 ISO-8859-5iso-8859-5 Cyrylica (ISO)Cyrillic (ISO)
2859628596 ISO-8859-6iso-8859-6 Arabski (ISO)Arabic (ISO)
2859728597 ISO-8859-7iso-8859-7 Grecki (ISO)Greek (ISO)
2859828598 ISO-8859-8iso-8859-8 Hebrajski (ISO-Visual)Hebrew (ISO-Visual)
2859928599 ISO-8859-9iso-8859-9 Turecki (ISO)Turkish (ISO)
2860328603 ISO-8859-13iso-8859-13 Estoński (ISO)Estonian (ISO)
2860528605 ISO-8859-15iso-8859-15 Latin 9 (ISO)Latin 9 (ISO)
2900129001 x-Europax-Europa StronieEuropa
3859838598 iso-8859-8-iiso-8859-8-i Hebrajski (ISO-Logical)Hebrew (ISO-Logical)
5022050220 iso-2022-jpiso-2022-jp Japoński (JIS)Japanese (JIS)
5022150221 csISO2022JPcsISO2022JP Japoński (JIS-dozwolone 1-bajtowe znaki kana)Japanese (JIS-Allow 1 byte Kana)
5022250222 iso-2022-jpiso-2022-jp Japoński (JIS-dozwolone 1-bajtowe znaki kana-SO/SI)Japanese (JIS-Allow 1 byte Kana - SO/SI)
5022550225 ISO-2022-KRiso-2022-kr Koreański (ISO)Korean (ISO)
5022750227 x-cp50227x-cp50227 Chiński uproszczony (ISO-2022)Chinese Simplified (ISO-2022)
5193251932 euc-jpeuc-jp Japoński (EUC)Japanese (EUC)
5193651936 EUC-CNEUC-CN Chiński uproszczony (EUC)Chinese Simplified (EUC)
5194951949 euc-kreuc-kr Koreański (EUC)Korean (EUC)
5293652936 hz-gb-2312hz-gb-2312 Chiński uproszczony (HZ)Chinese Simplified (HZ)
5493654936 GB18030GB18030 Chiński uproszczony (GB18030)Chinese Simplified (GB18030)
5700257002 x-iscii-dex-iscii-de ISCII dewanagariISCII Devanagari
5700357003 x-iscii-bex-iscii-be ISCII BengaliISCII Bengali
5700457004 x-ISCII-tax-iscii-ta ISCII tamilskiISCII Tamil
5700557005 x-ISCII-tex-iscii-te ISCII teluguISCII Telugu
5700657006 x-iscii-asx-iscii-as ISCII assamskiISCII Assamese
5700757007 x-ISCII lubx-iscii-or ISCII orijaISCII Oriya
5700857008 x-iscii-kax-iscii-ka ISCII KannadaISCII Kannada
5700957009 x-iscii-max-iscii-ma ISCII MalayalamISCII Malayalam
5701057010 x-iscii-gux-iscii-gu ISCII GujaratiISCII Gujarati
5701157011 x-iscii-pax-iscii-pa ISCII PunjabiISCII Punjabi
6500065000 UTF-7utf-7 Unicode (UTF-7)Unicode (UTF-7)
6500165001 UTF-8utf-8 Unicode (UTF-8)Unicode (UTF-8)

Poniższy przykład wywołuje metody GetEncoding(Int32) i GetEncoding(String), aby uzyskać greckie kodowanie strony kodowej (Windows).The following example calls the GetEncoding(Int32) and GetEncoding(String) methods to get the Greek (Windows) code page encoding. Porównuje Encoding obiekty zwracane przez wywołania metody, aby pokazać, że są równe, a następnie Maps wyświetla punkt kodu Unicode i odpowiednią wartość strony kodowej dla każdego znaku w alfabecie greckim.It compares the Encoding objects returned by the method calls to show that they are equal, and then maps displays the Unicode code point and the corresponding code page value for each character in the Greek alphabet.

using System;
using System.Text;

public class Example
{
   public static void Main()
   {
      Encoding enc = Encoding.GetEncoding(1253);
      Encoding altEnc = Encoding.GetEncoding("windows-1253");
      Console.WriteLine("{0} = Code Page {1}: {2}", enc.EncodingName,
                        altEnc.CodePage, enc.Equals(altEnc));
      string greekAlphabet = "Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η " +
                             "Θ θ Ι ι Κ κ Λ λ Μ μ Ν ν Ξ ξ " +
                             "Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ " +
                             "Φ φ Χ χ Ψ ψ Ω ω";
      Console.OutputEncoding = Encoding.UTF8;
      byte[] bytes = enc.GetBytes(greekAlphabet);
      Console.WriteLine("{0,-12} {1,20} {2,20:X2}", "Character",
                        "Unicode Code Point", "Code Page 1253");
      for (int ctr = 0; ctr < bytes.Length; ctr++) {
         if (greekAlphabet[ctr].Equals(' '))
            continue;

         Console.WriteLine("{0,-12} {1,20} {2,20:X2}", greekAlphabet[ctr],
                           GetCodePoint(greekAlphabet[ctr]), bytes[ctr]);
      }
   }

   private static string GetCodePoint(char ch)
   {
      string retVal = "u+";
      byte[] bytes = Encoding.Unicode.GetBytes(ch.ToString());
      for (int ctr = bytes.Length - 1; ctr >= 0; ctr--)
         retVal += bytes[ctr].ToString("X2");

      return retVal;
   }
}
// The example displays the following output:
//       Character      Unicode Code Point       Code Page 1253
//       Α                          u+0391                   C1
//       α                          u+03B1                   E1
//       Β                          u+0392                   C2
//       β                          u+03B2                   E2
//       Γ                          u+0393                   C3
//       γ                          u+03B3                   E3
//       Δ                          u+0394                   C4
//       δ                          u+03B4                   E4
//       Ε                          u+0395                   C5
//       ε                          u+03B5                   E5
//       Ζ                          u+0396                   C6
//       ζ                          u+03B6                   E6
//       Η                          u+0397                   C7
//       η                          u+03B7                   E7
//       Θ                          u+0398                   C8
//       θ                          u+03B8                   E8
//       Ι                          u+0399                   C9
//       ι                          u+03B9                   E9
//       Κ                          u+039A                   CA
//       κ                          u+03BA                   EA
//       Λ                          u+039B                   CB
//       λ                          u+03BB                   EB
//       Μ                          u+039C                   CC
//       μ                          u+03BC                   EC
//       Ν                          u+039D                   CD
//       ν                          u+03BD                   ED
//       Ξ                          u+039E                   CE
//       ξ                          u+03BE                   EE
//       Ο                          u+039F                   CF
//       ο                          u+03BF                   EF
//       Π                          u+03A0                   D0
//       π                          u+03C0                   F0
//       Ρ                          u+03A1                   D1
//       ρ                          u+03C1                   F1
//       Σ                          u+03A3                   D3
//       σ                          u+03C3                   F3
//       ς                          u+03C2                   F2
//       Τ                          u+03A4                   D4
//       τ                          u+03C4                   F4
//       Υ                          u+03A5                   D5
//       υ                          u+03C5                   F5
//       Φ                          u+03A6                   D6
//       φ                          u+03C6                   F6
//       Χ                          u+03A7                   D7
//       χ                          u+03C7                   F7
//       Ψ                          u+03A8                   D8
//       ψ                          u+03C8                   F8
//       Ω                          u+03A9                   D9
//       ω                          u+03C9                   F9
Imports System.Text

Module Example
   Public Sub Main()
      Dim enc As Encoding = Encoding.GetEncoding(1253)
      Dim altEnc As Encoding = Encoding.GetEncoding("windows-1253")
      Console.WriteLine("{0} = Code Page {1}: {2}", enc.EncodingName,
                        altEnc.CodePage, enc.Equals(altEnc))
      Dim greekAlphabet As String = "Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η " +
                                    "Θ θ Ι ι Κ κ Λ λ Μ μ Ν ν Ξ ξ " +
                                    "Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ " +
                                    "Φ φ Χ χ Ψ ψ Ω ω"
      Console.OutputEncoding = Encoding.UTF8
      Dim bytes() As Byte = enc.GetBytes(greekAlphabet)
      Console.WriteLine("{0,-12} {1,20} {2,20:X2}", "Character",
                        "Unicode Code Point", "Code Page 1253")
      For ctr As Integer = 0 To bytes.Length - 1
         If greekAlphabet(ctr).Equals(" "c) Then Continue For

         Console.WriteLine("{0,-12} {1,20} {2,20:X2}", greekAlphabet(ctr),
                           GetCodePoint(greekAlphabet(ctr)), bytes(ctr))
      Next

   End Sub
   
   Private Function GetCodePoint(ch As String) As String
      Dim retVal As String = "u+"
      Dim bytes() As Byte = Encoding.Unicode.GetBytes(ch)
      For ctr As Integer = bytes.Length - 1 To 0 Step -1
         retVal += bytes(ctr).ToString("X2")
      Next
      Return retVal
   End Function
End Module
' The example displays the following output:
'    Character      Unicode Code Point       Code Page 1253
'    Α                          u+0391                   C1
'    α                          u+03B1                   E1
'    Β                          u+0392                   C2
'    β                          u+03B2                   E2
'    Γ                          u+0393                   C3
'    γ                          u+03B3                   E3
'    Δ                          u+0394                   C4
'    δ                          u+03B4                   E4
'    Ε                          u+0395                   C5
'    ε                          u+03B5                   E5
'    Ζ                          u+0396                   C6
'    ζ                          u+03B6                   E6
'    Η                          u+0397                   C7
'    η                          u+03B7                   E7
'    Θ                          u+0398                   C8
'    θ                          u+03B8                   E8
'    Ι                          u+0399                   C9
'    ι                          u+03B9                   E9
'    Κ                          u+039A                   CA
'    κ                          u+03BA                   EA
'    Λ                          u+039B                   CB
'    λ                          u+03BB                   EB
'    Μ                          u+039C                   CC
'    μ                          u+03BC                   EC
'    Ν                          u+039D                   CD
'    ν                          u+03BD                   ED
'    Ξ                          u+039E                   CE
'    ξ                          u+03BE                   EE
'    Ο                          u+039F                   CF
'    ο                          u+03BF                   EF
'    Π                          u+03A0                   D0
'    π                          u+03C0                   F0
'    Ρ                          u+03A1                   D1
'    ρ                          u+03C1                   F1
'    Σ                          u+03A3                   D3
'    σ                          u+03C3                   F3
'    ς                          u+03C2                   F2
'    Τ                          u+03A4                   D4
'    τ                          u+03C4                   F4
'    Υ                          u+03A5                   D5
'    υ                          u+03C5                   F5
'    Φ                          u+03A6                   D6
'    φ                          u+03C6                   F6
'    Χ                          u+03A7                   D7
'    χ                          u+03C7                   F7
'    Ψ                          u+03A8                   D8
'    ψ                          u+03C8                   F8
'    Ω                          u+03A9                   D9
'    ω                          u+03C9                   F9

Jeśli dane, które mają być konwertowane, są dostępne tylko w blokach sekwencyjnych (takich jak dane odczytane ze strumienia) lub jeśli ilość danych jest tak duża, że musi być podzielona na mniejsze bloki, należy użyć Decoder lub Encoder dostarczone przez metodę GetDecoder lub metodę GetEncoder, odpowiednio, klasy pochodnej.If the data to be converted is available only in sequential blocks (such as data read from a stream) or if the amount of data is so large that it needs to be divided into smaller blocks, you should use the Decoder or the Encoder provided by the GetDecoder method or the GetEncoder method, respectively, of a derived class.

Kodery UTF-16 i UTF-32 mogą używać kolejności bajtów w big endian (najpierw najbardziej znaczący bajt) lub kolejności bajtów little endian (najpierw należy użyć co najmniej znaczącego bajtu).The UTF-16 and the UTF-32 encoders can use the big endian byte order (most significant byte first) or the little endian byte order (least significant byte first). Na przykład Wielka litera A (U + 0041) jest serializowana w następujący sposób (w formacie szesnastkowym):For example, the Latin Capital Letter A (U+0041) is serialized as follows (in hexadecimal):

  • Kolejność bajtów w formacie UTF-16 big endian: 00 41UTF-16 big endian byte order: 00 41

  • Kolejność bajtów w formacie UTF-16 little endian: 41 00UTF-16 little endian byte order: 41 00

  • Kolejność bajtów w formacie UTF-32 big endian: 00 00 00 41UTF-32 big endian byte order: 00 00 00 41

  • Kolejność bajtów w formacie UTF-32 little endian: 41 00 00 00UTF-32 little endian byte order: 41 00 00 00

Zwykle bardziej wydajne jest przechowywanie znaków Unicode przy użyciu kolejności bajtów natywnych.It is generally more efficient to store Unicode characters using the native byte order. Na przykład lepiej jest używać kolejności bajtów little endian na platformach little endian, takich jak komputery Intel.For example, it is better to use the little endian byte order on little endian platforms, such as Intel computers.

Metoda GetPreamble pobiera tablicę bajtów, która zawiera znacznik kolejności bajtów (BOM).The GetPreamble method retrieves an array of bytes that includes the byte order mark (BOM). Jeśli ta tablica bajtowa jest poprzedzona zakodowanym strumieniem, pomaga dekoderowi identyfikować używany format kodowania.If this byte array is prefixed to an encoded stream, it helps the decoder to identify the encoding format used.

Aby uzyskać więcej informacji na temat kolejności bajtów i znacznika kolejności bajtów, zobacz Standard Unicode na stronie głównej Unicode.For more information on byte order and the byte order mark, see The Unicode Standard at the Unicode home page.

Należy zauważyć, że klasy kodowania umożliwiają błędy:Note that the encoding classes allow errors to:

  • Przejdź w tryb dyskretny do znaku "?".Silently change to a "?" character.

  • Użyj znaku "Najlepsza dopasowanie".Use a "best fit" character.

  • Zmień zachowanie specyficzne dla aplikacji, korzystając z klas EncoderFallback i DecoderFallback, używając znaku zastępczego Unicode U + FFFD.Change to an application-specific behavior through use of the EncoderFallback and DecoderFallback classes with the U+FFFD Unicode replacement character.

W przypadku błędu strumienia danych należy zgłosić wyjątek.You should throw an exception on any data stream error. Aplikacja używa flagi "parametr throwOnError", jeśli ma zastosowanie lub używa klas EncoderExceptionFallback i DecoderExceptionFallback.An app either uses a "throwonerror" flag when applicable or uses the EncoderExceptionFallback and DecoderExceptionFallback classes. Opcja Najlepsza dopasowanie jest często niezalecana, ponieważ może spowodować utratę lub pomyłkę danych i jest wolniejsza niż proste zamiany znaków.Best fit fallback is often not recommended because it can cause data loss or confusion and is slower than simple character replacements. W przypadku kodowań ANSI najlepszym zachowaniem jest ustawienie domyślne.For ANSI encodings, the best fit behavior is the default.

Konstruktory

Encoding()

Inicjuje nowe wystąpienie klasy Encoding.Initializes a new instance of the Encoding class.

Encoding(Int32)

Inicjuje nowe wystąpienie klasy Encoding, które odnosi się do określonej strony kodowej.Initializes a new instance of the Encoding class that corresponds to the specified code page.

Encoding(Int32, EncoderFallback, DecoderFallback)

Inicjuje nowe wystąpienie klasy Encoding, które odnosi się do określonej strony kodowej z określonymi strategiami rezerwy kodera i dekodera.Initializes a new instance of the Encoding class that corresponds to the specified code page with the specified encoder and decoder fallback strategies.

Właściwości

ASCII

Pobiera kodowanie dla zestawu znaków ASCII (7-bitowy).Gets an encoding for the ASCII (7-bit) character set.

BigEndianUnicode

Pobiera kodowanie dla formatu UTF-16, który używa kolejności bajtów big endian.Gets an encoding for the UTF-16 format that uses the big endian byte order.

BodyName

Gdy jest zastępowany w klasie pochodnej, pobiera nazwę bieżącego kodowania, który może być używany z tagami treści agenta poczty.When overridden in a derived class, gets a name for the current encoding that can be used with mail agent body tags.

CodePage

Gdy jest zastępowany w klasie pochodnej, pobiera identyfikator strony kodowej bieżącego Encoding.When overridden in a derived class, gets the code page identifier of the current Encoding.

DecoderFallback

Pobiera lub ustawia obiekt DecoderFallback dla bieżącego obiektu Encoding.Gets or sets the DecoderFallback object for the current Encoding object.

Default

Pobiera domyślne kodowanie dla tej implementacji platformy .NET.Gets the default encoding for this .NET implementation.

EncoderFallback

Pobiera lub ustawia obiekt EncoderFallback dla bieżącego obiektu Encoding.Gets or sets the EncoderFallback object for the current Encoding object.

EncodingName

Gdy jest zastępowany w klasie pochodnej, Pobiera opis bieżącego kodowania przez człowieka.When overridden in a derived class, gets the human-readable description of the current encoding.

HeaderName

Gdy jest zastępowany w klasie pochodnej, pobiera nazwę bieżącego kodowania, który może być używany z tagami nagłówka agenta poczty.When overridden in a derived class, gets a name for the current encoding that can be used with mail agent header tags.

IsBrowserDisplay

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów przeglądarki do wyświetlania zawartości.When overridden in a derived class, gets a value indicating whether the current encoding can be used by browser clients for displaying content.

IsBrowserSave

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów przeglądarki do zapisywania zawartości.When overridden in a derived class, gets a value indicating whether the current encoding can be used by browser clients for saving content.

IsMailNewsDisplay

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów poczty e-mail i wiadomości do wyświetlania zawartości.When overridden in a derived class, gets a value indicating whether the current encoding can be used by mail and news clients for displaying content.

IsMailNewsSave

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów poczty e-mail i wiadomości do zapisywania zawartości.When overridden in a derived class, gets a value indicating whether the current encoding can be used by mail and news clients for saving content.

IsReadOnly

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie jest tylko do odczytu.When overridden in a derived class, gets a value indicating whether the current encoding is read-only.

IsSingleByte

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie używa jednobajtowych punktów kodowych.When overridden in a derived class, gets a value indicating whether the current encoding uses single-byte code points.

Preamble

Gdy jest zastępowany w klasie pochodnej, zwraca zakres zawierający sekwencję bajtów, która określa używane kodowanie.When overridden in a derived class, returns a span containing the sequence of bytes that specifies the encoding used.

Unicode

Pobiera kodowanie dla formatu UTF-16 przy użyciu kolejności bajtów little endian.Gets an encoding for the UTF-16 format using the little endian byte order.

UTF32

Pobiera kodowanie dla formatu UTF-32 przy użyciu kolejności bajtów little endian.Gets an encoding for the UTF-32 format using the little endian byte order.

UTF7

Pobiera kodowanie dla formatu UTF-7.Gets an encoding for the UTF-7 format.

UTF8

Pobiera kodowanie dla formatu UTF-8.Gets an encoding for the UTF-8 format.

WebName

Gdy jest zastępowany w klasie pochodnej, pobiera nazwę zarejestrowanej przez organizację IANA (Internet Assigned Numbers Authority) dla bieżącego kodowania.When overridden in a derived class, gets the name registered with the Internet Assigned Numbers Authority (IANA) for the current encoding.

WindowsCodePage

Gdy jest zastępowany w klasie pochodnej, pobiera stronę kodową systemu operacyjnego Windows, która najlepiej odpowiada bieżącemu kodowaniu.When overridden in a derived class, gets the Windows operating system code page that most closely corresponds to the current encoding.

Metody

Clone()

Gdy jest zastępowany w klasie pochodnej, tworzy skróconą kopię bieżącego obiektu Encoding.When overridden in a derived class, creates a shallow copy of the current Encoding object.

Convert(Encoding, Encoding, Byte[])

Konwertuje całą tablicę bajtową z jednego kodowania na inną.Converts an entire byte array from one encoding to another.

Convert(Encoding, Encoding, Byte[], Int32, Int32)

Konwertuje zakres bajtów w tablicy bajtów z jednego kodowania na inny.Converts a range of bytes in a byte array from one encoding to another.

Equals(Object)

Określa, czy określony Object jest równy bieżącemu wystąpieniu.Determines whether the specified Object is equal to the current instance.

GetByteCount(Char*, Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę bajtów wytwarzanych przez zakodowanie zestawu znaków, zaczynając od określonego wskaźnika znakowego.When overridden in a derived class, calculates the number of bytes produced by encoding a set of characters starting at the specified character pointer.

GetByteCount(Char[])

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę bajtów generowanych przez kodowanie wszystkich znaków w określonej tablicy znaków.When overridden in a derived class, calculates the number of bytes produced by encoding all the characters in the specified character array.

GetByteCount(Char[], Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę bajtów wytwarzanych przez zakodowanie zestawu znaków z określonej tablicy znaków.When overridden in a derived class, calculates the number of bytes produced by encoding a set of characters from the specified character array.

GetByteCount(ReadOnlySpan<Char>)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę bajtów wytwarzanych przez zakodowanie znaków w określonym zakresie znaków.When overridden in a derived class, calculates the number of bytes produced by encoding the characters in the specified character span.

GetByteCount(String)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę bajtów wytwarzanych przez zakodowanie znaków w określonym ciągu.When overridden in a derived class, calculates the number of bytes produced by encoding the characters in the specified string.

GetByteCount(String, Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę bajtów wytwarzanych przez zakodowanie zestawu znaków z określonego ciągu.When overridden in a derived class, calculates the number of bytes produced by encoding a set of characters from the specified string.

GetBytes(Char*, Int32, Byte*, Int32)

Gdy jest zastępowany w klasie pochodnej, koduje zestaw znaków, zaczynając od określonego wskaźnika znakowego do sekwencji bajtów, które są przechowywane Zaczynając od określonego wskaźnika Byte.When overridden in a derived class, encodes a set of characters starting at the specified character pointer into a sequence of bytes that are stored starting at the specified byte pointer.

GetBytes(Char[])

Gdy jest zastępowany w klasie pochodnej, koduje wszystkie znaki w określonej tablicy znaków w sekwencji bajtów.When overridden in a derived class, encodes all the characters in the specified character array into a sequence of bytes.

GetBytes(Char[], Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, koduje zestaw znaków z określonej tablicy znaków w sekwencji bajtów.When overridden in a derived class, encodes a set of characters from the specified character array into a sequence of bytes.

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

Gdy jest zastępowany w klasie pochodnej, koduje zestaw znaków z określonej tablicy znaków do określonej tablicy bajtów.When overridden in a derived class, encodes a set of characters from the specified character array into the specified byte array.

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

Gdy jest zastępowany w klasie pochodnej, koduje do zakresu bajtów zestaw znaków z określonego obszaru tylko do odczytu.When overridden in a derived class, encodes into a span of bytes a set of characters from the specified read-only span.

GetBytes(String)

Gdy jest zastępowany w klasie pochodnej, koduje wszystkie znaki w określonym ciągu do sekwencji bajtów.When overridden in a derived class, encodes all the characters in the specified string into a sequence of bytes.

GetBytes(String, Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, koduje tablicę bajtów liczbę znaków określoną przez count w określonym ciągu, rozpoczynając od określonego index.When overridden in a derived class, encodes into an array of bytes the number of characters specified by count in the specified string, starting from the specified index.

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

Gdy jest zastępowany w klasie pochodnej, koduje zestaw znaków z określonego ciągu w określonej tablicy bajtów.When overridden in a derived class, encodes a set of characters from the specified string into the specified byte array.

GetCharCount(Byte*, Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę znaków wytworzonych przez dekodowanie sekwencji bajtów, zaczynając od określonego wskaźnika Byte.When overridden in a derived class, calculates the number of characters produced by decoding a sequence of bytes starting at the specified byte pointer.

GetCharCount(Byte[])

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę znaków wytworzonych przez odkodowanie wszystkich bajtów w określonej tablicy bajtów.When overridden in a derived class, calculates the number of characters produced by decoding all the bytes in the specified byte array.

GetCharCount(Byte[], Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę znaków wytworzonych przez dekodowanie sekwencji bajtów z określonej tablicy bajtów.When overridden in a derived class, calculates the number of characters produced by decoding a sequence of bytes from the specified byte array.

GetCharCount(ReadOnlySpan<Byte>)

Gdy jest zastępowany w klasie pochodnej, oblicza liczbę znaków wytworzonych przez dekodowanie podanego zakresu bajtów tylko do odczytu.When overridden in a derived class, calculates the number of characters produced by decoding the provided read-only byte span.

GetChars(Byte*, Int32, Char*, Int32)

Gdy jest zastępowany w klasie pochodnej, dekoduje sekwencję bajtów, zaczynając od określonego wskaźnika Byte do zestawu znaków, które są przechowywane, zaczynając od określonego wskaźnika znakowego.When overridden in a derived class, decodes a sequence of bytes starting at the specified byte pointer into a set of characters that are stored starting at the specified character pointer.

GetChars(Byte[])

Gdy jest zastępowany w klasie pochodnej, dekoduje wszystkie bajty w określonej tablicy bajtów do zestawu znaków.When overridden in a derived class, decodes all the bytes in the specified byte array into a set of characters.

GetChars(Byte[], Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, dekoduje sekwencję bajtów z określonej tablicy bajtów do zestawu znaków.When overridden in a derived class, decodes a sequence of bytes from the specified byte array into a set of characters.

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

Gdy jest zastępowany w klasie pochodnej, dekoduje sekwencję bajtów z określonej tablicy bajtów do określonej tablicy znaków.When overridden in a derived class, decodes a sequence of bytes from the specified byte array into the specified character array.

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

Gdy jest zastępowany w klasie pochodnej, dekoduje wszystkie bajty w określonym zakresie bajtów tylko do odczytu do zakresu znaków.When overridden in a derived class, decodes all the bytes in the specified read-only byte span into a character span.

GetDecoder()

Gdy jest zastępowany w klasie pochodnej, uzyskuje dekoder, który konwertuje zakodowaną sekwencję bajtów na sekwencję znaków.When overridden in a derived class, obtains a decoder that converts an encoded sequence of bytes into a sequence of characters.

GetEncoder()

Gdy jest zastępowany w klasie pochodnej, uzyskuje koder, który konwertuje sekwencję znaków Unicode na zakodowaną sekwencję bajtów.When overridden in a derived class, obtains an encoder that converts a sequence of Unicode characters into an encoded sequence of bytes.

GetEncoding(Int32)

Zwraca kodowanie skojarzone z określonym identyfikatorem strony kodowej.Returns the encoding associated with the specified code page identifier.

GetEncoding(Int32, EncoderFallback, DecoderFallback)

Zwraca kodowanie skojarzone z określonym identyfikatorem strony kodowej.Returns the encoding associated with the specified code page identifier. Parametry określają procedurę obsługi błędów dla znaków, które nie mogą być zakodowane i sekwencje bajtów, których nie można zdekodować.Parameters specify an error handler for characters that cannot be encoded and byte sequences that cannot be decoded.

GetEncoding(String)

Zwraca kodowanie skojarzone z określoną nazwą strony kodowej.Returns the encoding associated with the specified code page name.

GetEncoding(String, EncoderFallback, DecoderFallback)

Zwraca kodowanie skojarzone z określoną nazwą strony kodowej.Returns the encoding associated with the specified code page name. Parametry określają procedurę obsługi błędów dla znaków, które nie mogą być zakodowane i sekwencje bajtów, których nie można zdekodować.Parameters specify an error handler for characters that cannot be encoded and byte sequences that cannot be decoded.

GetEncodings()

Zwraca tablicę zawierającą wszystkie kodowanie.Returns an array that contains all encodings.

GetHashCode()

Zwraca wartość skrótu dla bieżącego wystąpienia.Returns the hash code for the current instance.

GetMaxByteCount(Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza maksymalną liczbę bajtów wyprodukowanych przez zakodowanie określonej liczby znaków.When overridden in a derived class, calculates the maximum number of bytes produced by encoding the specified number of characters.

GetMaxCharCount(Int32)

Gdy jest zastępowany w klasie pochodnej, oblicza maksymalną liczbę znaków wyprodukowanych przez dekodowanie określonej liczby bajtów.When overridden in a derived class, calculates the maximum number of characters produced by decoding the specified number of bytes.

GetPreamble()

Gdy jest zastępowany w klasie pochodnej, zwraca sekwencję bajtów, która określa używane kodowanie.When overridden in a derived class, returns a sequence of bytes that specifies the encoding used.

GetString(Byte*, Int32)

Gdy jest zastępowany w klasie pochodnej, dekoduje określoną liczbę bajtów, zaczynając od określonego adresu do ciągu.When overridden in a derived class, decodes a specified number of bytes starting at a specified address into a string.

GetString(Byte[])

Gdy jest zastępowany w klasie pochodnej, dekoduje wszystkie bajty w określonej tablicy bajtów do ciągu.When overridden in a derived class, decodes all the bytes in the specified byte array into a string.

GetString(Byte[], Int32, Int32)

Gdy jest zastępowany w klasie pochodnej, dekoduje sekwencję bajtów z określonej tablicy bajtów do ciągu.When overridden in a derived class, decodes a sequence of bytes from the specified byte array into a string.

GetString(ReadOnlySpan<Byte>)

Gdy jest zastępowany w klasie pochodnej, dekoduje wszystkie bajty w określonym przedziale bajtów do ciągu.When overridden in a derived class, decodes all the bytes in the specified byte span into a string.

GetType()

Pobiera Type bieżącego wystąpienia.Gets the Type of the current instance.

(Odziedziczone po Object)
IsAlwaysNormalized()

Pobiera wartość wskazującą, czy bieżące kodowanie jest zawsze znormalizowane, przy użyciu domyślnego formularza normalizacji.Gets a value indicating whether the current encoding is always normalized, using the default normalization form.

IsAlwaysNormalized(NormalizationForm)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość wskazującą, czy bieżące kodowanie jest zawsze znormalizowane, przy użyciu podanego formularza normalizacji.When overridden in a derived class, gets a value indicating whether the current encoding is always normalized, using the specified normalization form.

MemberwiseClone()

Tworzy skróconą kopię bieżącego Object.Creates a shallow copy of the current Object.

(Odziedziczone po Object)
RegisterProvider(EncodingProvider)

Rejestruje dostawcę kodowania.Registers an encoding provider.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Metody rozszerzania

GetBytes(Encoding, ReadOnlySequence<Char>)
GetBytes(Encoding, ReadOnlySequence<Char>, IBufferWriter<Byte>)
GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>)
GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>)
GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>)
GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>)
GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>)
GetString(Encoding, ReadOnlySequence<Byte>)

Dotyczy

Zobacz też