1

char以 UTF-7 格式保存的单个 UTF-16 字符(2 字节字符,即 .NET 中的类型)的最大字节大小是多少?

这是我在维基百科上找到的:

5 对于单字节字符运行中的孤立案例。对于运行 2 2⁄3 每个字符加上填充使其成为整数字节加上两个开始和结束运行

http://en.wikipedia.org/wiki/Comparison_of_Unicode_encodings#Seven-bit_environments

4

1 回答 1

2

对于单个UTF-16 代码单元,您需要注意的唯一数字是5

本质上,在UTF-7中,不在其“安全”字母表中的字符将转换为 UTF-16,然后再转换为修改后的 Base64。使用单个 UTF-16 代码单元,将其转换为 2 2/3 Base64 单元,然后填充为完整的 3。在开头和结尾添加转义字符以将其表示为 UTF-7 序列,从而导致最多 5 个字节。

于 2014-03-19T04:32:08.467 回答