System.Text Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Classes
Ascii | |
ASCIIEncoding |
Represents an ASCII character encoding of Unicode characters. |
CodePagesEncodingProvider |
Provides access to an encoding provider for code pages that otherwise are available only in the desktop .NET Framework. |
CompositeFormat |
Represents a parsed composite format string. |
Decoder |
Converts a sequence of encoded bytes into a set of characters. |
DecoderExceptionFallback |
Provides a failure-handling mechanism, called a fallback, for an encoded input byte sequence that cannot be converted to an input character. The fallback throws an exception instead of decoding the input byte sequence. This class cannot be inherited. |
DecoderExceptionFallbackBuffer |
Throws DecoderFallbackException when an encoded input byte sequence cannot be converted to a decoded output character. This class cannot be inherited. |
DecoderFallback |
Provides a failure-handling mechanism, called a fallback, for an encoded input byte sequence that cannot be converted to an output character. |
DecoderFallbackBuffer |
Provides a buffer that allows a fallback handler to return an alternate string to a decoder when it cannot decode an input byte sequence. |
DecoderFallbackException |
The exception that is thrown when a decoder fallback operation fails. This class cannot be inherited. |
DecoderReplacementFallback |
Provides a failure-handling mechanism, called a fallback, for an encoded input byte sequence that cannot be converted to an output character. The fallback emits a user-specified replacement string instead of a decoded input byte sequence. This class cannot be inherited. |
DecoderReplacementFallbackBuffer |
Represents a substitute output string that is emitted when the original input byte sequence cannot be decoded. This class cannot be inherited. |
Encoder |
Converts a set of characters into a sequence of bytes. |
EncoderExceptionFallback |
Provides a failure-handling mechanism, called a fallback, for an input character that cannot be converted to an output byte sequence. The fallback throws an exception if an input character cannot be converted to an output byte sequence. This class cannot be inherited. |
EncoderExceptionFallbackBuffer |
Throws EncoderFallbackException when an input character cannot be converted to an encoded output byte sequence. This class cannot be inherited. |
EncoderFallback |
Provides a failure-handling mechanism, called a fallback, for an input character that cannot be converted to an encoded output byte sequence. |
EncoderFallbackBuffer |
Provides a buffer that allows a fallback handler to return an alternate string to an encoder when it cannot encode an input character. |
EncoderFallbackException |
The exception that is thrown when an encoder fallback operation fails. This class cannot be inherited. |
EncoderReplacementFallback |
Provides a failure handling mechanism, called a fallback, for an input character that cannot be converted to an output byte sequence. The fallback uses a user-specified replacement string instead of the original input character. This class cannot be inherited. |
EncoderReplacementFallbackBuffer |
Represents a substitute input string that is used when the original input character cannot be encoded. This class cannot be inherited. |
Encoding |
Represents a character encoding. |
EncodingExtensions |
Provides extension methods for the encoding types, such as Encoding, Encoder, and Decoder. |
EncodingInfo |
Provides basic information about an encoding. |
EncodingProvider |
Provides the base class for an encoding provider, which supplies encodings that are unavailable on a particular platform. |
RedactionStringBuilderExtensions |
Redaction utility methods. |
StringBuilder |
Represents a mutable string of characters. This class cannot be inherited. |
UnicodeEncoding |
Represents a UTF-16 encoding of Unicode characters. |
UTF32Encoding |
Represents a UTF-32 encoding of Unicode characters. |
UTF7Encoding |
Represents a UTF-7 encoding of Unicode characters. |
UTF8Encoding |
Represents a UTF-8 encoding of Unicode characters. |
Structs
Rune |
Represents a Unicode scalar value ([ U+0000..U+D7FF ], inclusive; or [ U+E000..U+10FFFF ], inclusive). |
SpanLineEnumerator |
Enumerates the lines of a ReadOnlySpan<T>. |
SpanRuneEnumerator |
Provides an enumerator for the Rune values represented by a span containing UTF-16 text. |
StringBuilder.AppendInterpolatedStringHandler |
Provides a handler used by the language compiler to append interpolated strings into StringBuilder instances. |
StringBuilder.ChunkEnumerator |
Supports simple iteration over the chunks of a StringBuilder instance. |
StringRuneEnumerator |
Provides an enumerator for the Rune values represented by a string. |
Enums
NormalizationForm |
Defines the type of normalization to perform. |
Remarks
The encoding classes are primarily intended to convert between different encodings or code pages and a Unicode encoding. Encoding.Unicode (UTF-16) encoding is used internally by .NET, and Encoding.UTF8 encoding is often used for storing character data to ensure portability across machines and cultures.
The classes derived from Encoding enable you to choose a fallback strategy, which determines how characters that cannot be encoded into a sequence of bytes, or bytes that cannot be decoded into characters, are handled. You can choose one of the following:
Exception fallback. You can choose to throw exceptions on data errors either by using a
throwonerror
flag that is available in some class constructors or by using the EncoderExceptionFallback and DecoderExceptionFallback classes. If you are concerned about the integrity of the data stream, throwing on an exception is recommended.Replacement fallback. You can use the EncoderFallback and DecoderFallback classes to silently change a character to "?" or to the Unicode replacement character (U+FFFD).
Best-fit fallback. This option maps a character in one encoding to a character in another encoding. Best fit fallback is often not recommended because it can cause data loss and confusion, and is slower than simple "?" character replacements. However, for ANSI code pages the best-fit behavior is the default.
The StringBuilder class is designed for operations that perform extensive manipulations on a single string. Unlike the String class, the StringBuilder class is mutable and provides better performance when concatenating or deleting strings.
For more information about System.Text, see How to use character encoding classes in .NET .