是否有直接使用UTF-8的.NET StringBuilder?

时间:2012-06-28 14:26:29

标签: c# .net

我有一个性能敏感的场景,我想将UTF-8写入字节数组。

.NET StringBuilder类的快速浏览让我相信它只能本地构建UTF-16。 Encoding.UTF8.GetBytes(str)表示我不愿意花费额外的分配和额外的时钟周期。

是否有原生的UTF-8作家?

1 个答案:

答案 0 :(得分:4)

MemoryStream就像字节的StringBuilder一样;您可以通过重复向其添加字节序列来使用它来有效地创建字节序列。它没有附加字符串的方法。为了避免首先将每个字符串转换为字节数组,您可以将流包装在负责转换的StreamWriter中。