8
将Stream转换为String并返回……我们缺少什么?
我想将对象序列化为字符串,然后返回。 我们使用protobuf-net将对象成功转换为Stream并返回。 但是,流到字符串并返回...不是很成功。经过StreamToString和之后StringToStream,新协议Stream不会被protobuf-net反序列化;它引发一个Arithmetic Operation resulted in an Overflow异常。如果我们反序列化原始流,它将起作用。 我们的方法: public static string StreamToString(Stream stream) { stream.Position = 0; using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { return reader.ReadToEnd(); } } public static Stream StringToStream(string src) { byte[] byteArray = Encoding.UTF8.GetBytes(src); return new MemoryStream(byteArray); } 我们的示例代码使用这两个: MemoryStream stream = new MemoryStream(); …