我正在阅读NetworkStream
中的XML数据,如下所示。
using (XmlReader xmlReader = XmlReader.Create(stream, new XmlReaderSettings() { Async = true }))
{
try
{
while (await xmlReader.ReadAsync())
{
...
我想致电stream.Inject("</stop>")
,以便可以在上面的while
循环中阅读。我知道我必须围绕Stream
编写一个包装器类并实现Inject
方法并覆盖ReadAsync
方法。但是我不知道如何实现这一目标。有人会告诉我这样的事情是如何完成的(我无法想象在我的Inject
方法中应该添加额外的字符串吗?
答案 0 :(得分:-1)
NetworkStream是一个Stream,这意味着您可以将任何数据块写入其中,包括XML字符串。当然,你必须做一些转换,如:
byte[] data = System.Text.Encoding.UTF8.GetBytes(longXmlString);
networkSteram.Write(data);