我有一个写WebRequest流的XMLTextWriter。每件事都像它应该的那样工作:
Dim wr As WebRequest = WebRequest.Create("https://wwwcie.ups.com/ups.app/xml/ShipAccept")
With wr
.Method = "POST"
.ContentType = "application/x-www-form-urlencoded"
End With
Dim requestStream As Stream = wr.GetRequestStream
Using requestStream
Dim x As New XmlTextWriter(requestStream, Encoding.UTF8)
Using x
With x
.WriteStartDocument()
'XML
.WriteStartElement("ShipmentAcceptRequest")
'ShipmentAcceptRequest
.WriteStartElement("Request")
'Request
.WriteElementString("RequestAction", sar.Request.RequestAction)
'/Request
.WriteEndElement()
.WriteElementString("ShipmentDigest", sar.ShipmentDigest)
'/ShipmentAcceptRequest
.WriteEndElement()
'/XML
.WriteEndDocument()
.Flush()
End With
End Using
End Using我如何截取这个被写成XMLDocument类型的XML?我试着从流中抓取它,但得到的结果是‘流不支持读取。’异常(这对我来说并不奇怪)。
谢谢
发布于 2010-02-05 22:52:10
我不认为你可以截取流,因为根据它的定义,它是:
是一种写入器,它提供了一种快速的、非缓存的、只向前的生成流的方式
非缓存和转发--这只是你的问题。
所以..。有什么阻止你以相反的顺序做这件事吗?
将XML写入XmlDocument,完成后调用XmlDocument.WriteTo将XML输出到XmlWriter (在本例中是将XmlTextWriter输出到请求流)。
https://stackoverflow.com/questions/1643218
复制相似问题