1

我有一个BufferedInputStream表示 XML 文件,但我不确定架构是什么。所以,我想做的是解析 XML,探索 DOM 以确定它动态的 XML 格式/模式,然后reset()是流,然后将流传递给适当的解析库。

但是,似乎正在为我DocumentBuilder关闭BufferedInputStream。我该如何防止这种情况?是否有防止这种情况的 API 方法?

4

1 回答 1

0

这是我能想到的最好的:

  1. BufferedInputStream用不会将close()命令传播到“真实”的实现来装饰我的“真实” BufferedInputStream(但会传播所有其他方法)
  2. 将装饰传递BufferedInputStreamDocumentBuilder.
  3. reset()我的“真实” BufferedInputStream
  4. close()当我准备好时,“真实”。

欢迎更好的答案,因为我宁愿通过 API 来做,而不是通过这个。

于 2013-08-13T18:33:12.837 回答