System.Text Przestrzeń nazw

Zawiera klasy reprezentujące kodowanie znaków ASCII i Unicode; abstrakcyjne klasy bazowe do konwertowania bloków znaków na i z bloków bajtów; i klasa pomocnika, która manipuluje i formatuje String obiekty bez tworzenia wystąpień Stringpośrednich klasy .

Klasy

Ascii

Zawiera klasy reprezentujące kodowanie znaków ASCII i Unicode; abstrakcyjne klasy bazowe do konwertowania bloków znaków na i z bloków bajtów; i klasa pomocnika, która manipuluje i formatuje String obiekty bez tworzenia wystąpień Stringpośrednich klasy .

ASCIIEncoding

Reprezentuje kodowanie znaków ASCII znaków Unicode.

CodePagesEncodingProvider

Zapewnia dostęp do dostawcy kodowania dla stron kodu, które w przeciwnym razie są dostępne tylko w .NET Framework pulpitu.

CompositeFormat

Reprezentuje przeanalizowany ciąg formatu złożonego.

Decoder

Konwertuje sekwencję zakodowanych bajtów na zestaw znaków.

DecoderExceptionFallback

Zapewnia mechanizm obsługi błędów nazywany rezerwą dla zakodowanej sekwencji bajtów wejściowych, której nie można przekonwertować na znak wejściowy. Rezerwowy element zgłasza wyjątek zamiast dekodowania sekwencji bajtów wejściowych. Klasa ta nie może być dziedziczona.

DecoderExceptionFallbackBuffer

Zgłasza, DecoderFallbackException gdy nie można przekonwertować zakodowanej sekwencji bajtów wejściowych na zdekodowany znak wyjściowy. Klasa ta nie może być dziedziczona.

DecoderFallback

Zapewnia mechanizm obsługi błędów, nazywany rezerwą, dla zakodowanej sekwencji bajtów wejściowych, której nie można przekonwertować na znak wyjściowy.

DecoderFallbackBuffer

Udostępnia bufor, który umożliwia programowi obsługi rezerwowej zwracanie alternatywnego ciągu do dekodera, gdy nie może dekodować sekwencji bajtów wejściowych.

DecoderFallbackException

Wyjątek zgłaszany w przypadku niepowodzenia operacji rezerwowej dekodera. Klasa ta nie może być dziedziczona.

DecoderReplacementFallback

Zapewnia mechanizm obsługi błędów, nazywany rezerwą, dla zakodowanej sekwencji bajtów wejściowych, której nie można przekonwertować na znak wyjściowy. Rezerwowy emituje określony przez użytkownika ciąg zastępczy zamiast zdekodowanej sekwencji bajtów wejściowych. Klasa ta nie może być dziedziczona.

DecoderReplacementFallbackBuffer

Reprezentuje zastępczy ciąg wyjściowy emitowany, gdy nie można zdekodować oryginalnej sekwencji bajtów wejściowych. Klasa ta nie może być dziedziczona.

Encoder

Konwertuje zestaw znaków na sekwencję bajtów.

EncoderExceptionFallback

Zapewnia mechanizm obsługi błędów nazywany rezerwowym znakiem wejściowym, którego nie można przekonwertować na sekwencję bajtów wyjściowych. Rezerwowy zwraca wyjątek, jeśli nie można przekonwertować znaku wejściowego na sekwencję bajtów wyjściowych. Klasa ta nie może być dziedziczona.

EncoderExceptionFallbackBuffer

Zgłasza, EncoderFallbackException gdy nie można przekonwertować znaku wejściowego na zakodowaną sekwencję bajtów wyjściowych. Klasa ta nie może być dziedziczona.

EncoderFallback

Zapewnia mechanizm obsługi błędów nazywany rezerwowym znakiem wejściowym, którego nie można przekonwertować na zakodowaną sekwencję bajtów wyjściowych.

EncoderFallbackBuffer

Udostępnia bufor, który umożliwia programowi obsługi rezerwowej zwrócenie alternatywnego ciągu do kodera, gdy nie może zakodować znaku wejściowego.

EncoderFallbackException

Wyjątek zgłaszany w przypadku niepowodzenia operacji powrotu kodera. Klasa ta nie może być dziedziczona.

EncoderReplacementFallback

Zapewnia mechanizm obsługi błędów nazywany rezerwowym znakiem wejściowym, którego nie można przekonwertować na sekwencję bajtów wyjściowych. Rezerwowy używa ciągu zastępczego określonego przez użytkownika zamiast oryginalnego znaku wejściowego. Klasa ta nie może być dziedziczona.

EncoderReplacementFallbackBuffer

Reprezentuje zastępczy ciąg wejściowy, który jest używany, gdy nie można kodować oryginalnego znaku wejściowego. Klasa ta nie może być dziedziczona.

Encoding

Reprezentuje kodowanie znaków.

EncodingExtensions

Udostępnia metody rozszerzenia dla typów kodowania, takich jak Encoding, Encoderi Decoder.

EncodingInfo

Zawiera podstawowe informacje o kodowaniu.

EncodingProvider

Udostępnia klasę bazową dla dostawcy kodowania, który dostarcza kodowanie, które są niedostępne na określonej platformie.

RedactionStringBuilderExtensions

Metody narzędzia redaction.

StringBuilder

Reprezentuje modyfikowalny ciąg znaków. Klasa ta nie może być dziedziczona.

UnicodeEncoding

Reprezentuje kodowanie UTF-16 znaków Unicode.

UTF32Encoding

Reprezentuje kodowanie UTF-32 znaków Unicode.

UTF7Encoding

Reprezentuje kodowanie UTF-7 znaków Unicode.

UTF8Encoding

Reprezentuje kodowanie UTF-8 znaków Unicode.

Struktury

Rune

Reprezentuje wartość skalarną Unicode ([ U+0000..U+D7FF ], włącznie; lub [ U+E000.). U+10FFFF ], włącznie).

SpanLineEnumerator

Wylicza wiersze obiektu ReadOnlySpan<T>.

SpanRuneEnumerator

Zawiera moduł wyliczający dla Rune wartości reprezentowanych przez zakres zawierający tekst UTF-16.

StringBuilder.AppendInterpolatedStringHandler

Udostępnia procedurę obsługi używaną przez kompilator języka do dołączania ciągów interpolowanych do StringBuilder wystąpień.

StringBuilder.ChunkEnumerator

Obsługuje prostą iterację fragmentów StringBuilder wystąpienia.

StringRuneEnumerator

Dostarcza moduł wyliczający dla Rune wartości reprezentowanych przez ciąg.

Wyliczenia

NormalizationForm

Definiuje typ normalizacji do wykonania.

Uwagi

Klasy kodowania są przeznaczone głównie do konwersji między różnymi kodami lub stronami kodu i kodowaniem Unicode. Encoding.Unicode Kodowanie UTF-16 jest używane wewnętrznie przez platformę .NET, a Encoding.UTF8 kodowanie jest często używane do przechowywania danych znaków w celu zapewnienia przenośności między maszynami i kulturami.

Klasy pochodne umożliwiają Encoding wybranie strategii rezerwowej, która określa sposób kodowania znaków w sekwencji bajtów lub bajtów, których nie można zdekodować do znaków. Możesz wybrać jedną z następujących opcji:

  • Rezerwowy wyjątek. Istnieje możliwość zgłaszania wyjątków dotyczących błędów danych przy użyciu flagi dostępnej throwonerror w niektórych konstruktorach klas lub przy użyciu EncoderExceptionFallback klas i DecoderExceptionFallback . Jeśli interesuje Cię integralność strumienia danych, zaleca się zgłaszanie wyjątku.

  • Rezerwowa zamiana. Możesz użyć EncoderFallback klas i DecoderFallback , aby dyskretnie zmienić znak na "?" lub na znak zastępczy Unicode (U+FFFD).

  • Najlepiej pasuje rezerwowy. Ta opcja mapuje znak w jednym kodowaniu na znak w innym kodowaniu. Najlepsze dopasowanie rezerwowe jest często niezalecane, ponieważ może to spowodować utratę danych i zamieszanie i jest wolniejsze niż proste zamiany znaków "?". Jednak w przypadku stron kodowych ANSI najlepszym zachowaniem jest domyślne.

Klasa została zaprojektowana StringBuilder pod kątem operacji, które wykonują obszerne manipulowanie jednym ciągiem. String W przeciwieństwie do klasy StringBuilder klasa jest modyfikowalna i zapewnia lepszą wydajność podczas łączenia lub usuwania ciągów.

Aby uzyskać więcej informacji na temat System.Textprogramu , zobacz How to use character encoding classes in .NET (Jak używać klas kodowania znaków na platformie .NET ).