gpt4 book ai didi

c# - XDocument.Load(Stream) 如何检测 XML 消息的结尾?

转载 作者:太空宇宙 更新时间:2023-11-03 21:28:35 25 4
gpt4 key购买 nike

我正在从 TcpClient 流中读取 XDocument。在实现时,我想知道 XDocument.Load(Stream) 是如何知道文档何时完成的?

我脑海中闪过几个想法,比如接收到流结束或没有更多可用字节。但现在看起来更多的是 Load() 在收到 EndElement 时完成。

有人知道 Load(Stream) 内部是如何工作的吗?

谢谢汤姆

最佳答案

很容易证明它读取了结束元素 - 您只需要创建一个 XML 文件,其中包含结束元素之后的数据,使其无效:

<root>
<child />
</root>

More stuff

如果你加载它,你会得到这样的异常:

Unhandled Exception: System.Xml.XmlException: Data at the root level is invalid.
Line 5, position 1.

我强烈希望它读到流的末尾。

关于c# - XDocument.Load(Stream) 如何检测 XML 消息的结尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25405521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com