System.Text 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
类
Ascii |
包含表示 ASCII 和 Unicode 字符编码的类;用于字符块和字节块相互转换的抽象基类;以及无需创建 String 的中间实例即可操作 String 对象并设置其格式的帮助程序类。 |
ASCIIEncoding |
表示 Unicode 字符的 ASCII 字符编码。 |
CodePagesEncodingProvider |
为只在桌面 .NET Framework 中可用的代码页提供对编码提供程序的访问权限。 |
CompositeFormat |
表示已分析的复合格式字符串。 |
Decoder |
将已编码字节的序列转换为一组字符。 |
DecoderExceptionFallback |
为不能转换为输入字符的已编码输入字节序列提供失败处理机制(称为“回退”)。 回退引发异常,而不是解码输入字节序列。 此类不能被继承。 |
DecoderExceptionFallbackBuffer |
当编码的输入字节序列无法转换为解码的输出字符时引发 DecoderFallbackException。 此类不能被继承。 |
DecoderFallback |
为不能转换为输出字符的已编码输入字节序列提供称为“回退”的失败处理机制。 |
DecoderFallbackBuffer |
提供一个缓冲区,该缓冲区允许回退处理程序在解码器无法对输入字节序列进行解码时将替换字符串返回到该解码器。 |
DecoderFallbackException |
解码器回退操作失败时引发的异常。 此类不能被继承。 |
DecoderReplacementFallback |
为不能转换为输出字符的已编码输入字节序列提供称为“回退”的失败处理机制。 回退发出用户指定的替换字符串,而不是已解码的输入字节序列。 此类不能被继承。 |
DecoderReplacementFallbackBuffer |
表示无法对原始输入字节序列解码时发出的替代输出字符串。 此类不能被继承。 |
Encoder |
将一组字符转换为一个字节序列。 |
EncoderExceptionFallback |
为不能转换为输出字节序列的输入字符提供一个称为“回退”的失败处理机制。 如果输入字符无法转换为输出字节序列,则回退会引发异常。 此类不能被继承。 |
EncoderExceptionFallbackBuffer |
当输入字符无法转换为编码的输出字节序列时引发 EncoderFallbackException。 此类不能被继承。 |
EncoderFallback |
为不能转换为已编码输出字节序列的输入字符提供称为“回退”的失败处理机制。 |
EncoderFallbackBuffer |
提供一个缓冲区,该缓冲区允许回退处理程序在编码器无法对输入字符进行编码时将替换字符串返回到该编码器。 |
EncoderFallbackException |
编码器回退操作失败时引发的异常。 此类不能被继承。 |
EncoderReplacementFallback |
为不能转换为输出字节序列的输入字符提供一个称为“回退”的失败处理机制。 此回退使用由用户指定的替换字符串来代替原始的输入字符。 此类不能被继承。 |
EncoderReplacementFallbackBuffer |
表示无法对原始输入字符进行编码时使用的替代输入字符串。 此类不能被继承。 |
Encoding |
表示字符编码。 |
EncodingExtensions | |
EncodingInfo |
提供有关编码的基本信息。 |
EncodingProvider |
提供编码提供程序的基类,后者提供在特定平台上不可用的编码。 |
RedactionStringBuilderExtensions |
编修实用工具方法。 |
StringBuilder |
表示可变字符字符串。 此类不能被继承。 |
UnicodeEncoding |
表示 Unicode 字符的 UTF-16 编码。 |
UTF32Encoding |
表示 Unicode 字符的 UTF-32 编码。 |
UTF7Encoding |
表示 Unicode 字符的 UTF-7 编码。 |
UTF8Encoding |
表示 Unicode 字符的 UTF-8 编码。 |
结构
Rune |
表示 Unicode 标量值([ U+0000..U+D7FF ],含首尾值;或 [ U+E000..U+10FFFF ],含首尾值)。 |
SpanLineEnumerator |
枚举 的 ReadOnlySpan<T>行。 |
SpanRuneEnumerator |
为由包含 UTF-16 文本的范围表示的 Rune 值提供枚举器。 |
StringBuilder.AppendInterpolatedStringHandler |
提供语言编译器用于将内插字符串追加到 StringBuilder 实例中的处理程序。 |
StringBuilder.ChunkEnumerator |
支持对 StringBuilder 实例的区块进行简单迭代。 |
StringRuneEnumerator |
为由字符串表示的 Rune 值提供枚举器。 |
枚举
NormalizationForm |
定义要执行的规范化的类型。 |
注解
编码类主要用于在不同的编码或代码页与 Unicode 编码之间进行转换。 Encoding.Unicode (UTF-16) 编码由 .NET 在内部使用,编码 Encoding.UTF8 通常用于存储字符数据,以确保跨计算机和区域性的可移植性。
派生自 Encoding 的类使你能够选择回退策略,该策略确定如何处理无法编码为字节序列的字符或无法解码为字符的字节。 你可以选择以下方法之一:
异常回退。 可以选择通过使用
throwonerror
某些类构造函数中可用的标志或使用 EncoderExceptionFallback 和 DecoderExceptionFallback 类来对数据错误引发异常。 如果担心数据流的完整性,建议在异常时引发。替换回退。 可以使用 EncoderFallback 和 DecoderFallback 类以无提示方式将字符更改为“?”或 Unicode 替换字符 (U+FFFD) 。
最适合的回退。 此选项将一个编码中的字符映射到另一个编码中的字符。 通常不建议使用最佳拟合回退,因为它可能会导致数据丢失和混淆,并且比简单的“?”字符替换要慢。 但是,对于 ANSI 代码页,最适合的行为是默认行为。
类 StringBuilder 设计用于对单个字符串执行大量操作的操作。 String与 类不同, StringBuilder 类是可变的,在串联或删除字符串时提供更好的性能。
有关 的详细信息 System.Text,请参阅 如何在 .NET 中使用字符编码类 。