0

我正在从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方法中应该在哪里添加额外的字符串)?

4

1 回答 1

-1

NetworkStream 是一个 Stream,这意味着您可以将任何数据块写入其中,包括 XML 字符串。当然,您必须进行一些转换,例如:

byte[] data = System.Text.Encoding.UTF8.GetBytes(longXmlString);
networkSteram.Write(data);
于 2013-08-23T12:25:03.997 回答