我有一个BufferedInputStream
表示 XML 文件,但我不确定架构是什么。所以,我想做的是解析 XML,探索 DOM 以确定它动态的 XML 格式/模式,然后reset()
是流,然后将流传递给适当的解析库。
但是,似乎正在为我DocumentBuilder
关闭BufferedInputStream
。我该如何防止这种情况?是否有防止这种情况的 API 方法?
这是我能想到的最好的:
BufferedInputStream
用不会将close()
命令传播到“真实”的实现来装饰我的“真实” BufferedInputStream
(但会传播所有其他方法)BufferedInputStream
给DocumentBuilder
.reset()
我的“真实” BufferedInputStream
。close()
当我准备好时,“真实”。欢迎更好的答案,因为我宁愿通过 API 来做,而不是通过这个。