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

Jac*_*ter 5 .net c#

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

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

有原生的 UTF-8 编写器吗?

dtb*_*dtb 4

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