我需要创建一个文件,其中某些部分是字符串(utf-8),而某些部分是字节。
StreamWriter
我用and修补了几个小时BinaryWriter
,但这是唯一有效的方法:
using (var stream = new FileStream(_caminho, FileMode.Create, FileAccess.Write))
{
using (var writer = new StreamWriter(stream))
{
writer.Write(myString);
}
}
using (var stream = new FileStream(_caminho, FileMode.Append, FileAccess.Write))
{
using (var writer = new BinaryWriter(stream))
{
writer.Write(oneSingleByte);
}
}
问题是我必须关闭 FileStream 并打开另一个 FileStream 才能写入一个字节,因为该BinaryStream.Write(string)
方法会预先添加一个“长度”字段(在我的情况下不需要),或者StreamWriter.Write(byte)
编码字节值而不是实际直接写入。
我的问题是:我可以使用另一个类,以便我只能创建一次 FileStream,然后一个接一个地写入我的字符串和字节吗?