1

我有一个string并且想将它写入一个Stream实例。鉴于我不想将流包装在 a 中StreamWriter,因为非字符串数据也写入同一个流,可能最简单的方法是:

byte[] bytes = myEncoding.GetBytes(string);
stream.Write(bytes 0, bytes.Length);

这是我的程序中对性能非常关键的部分,我想避免不必要地创建中间字节数组。是否可以在 .net 中完成而不重新实现System.Text命名空间的字符串编码功能?

使用Encoder.Convert(Char[], Int32, Int32, Byte[], Int32, Int32, Boolean, Int32, Int32, Boolean),理论上我可以用我自己的重用Byte[]数组循环它看起来不是最有效的方法这样做,尽管它可能比Encoding.GetBytes变体更有效。

那么有什么直接的方法可以将字符串写入我缺少的 Stream 吗?

4

0 回答 0