gpt4 book ai didi

c# - 为什么 FileStream 没有被 XmlReader 关闭

转载 作者:太空狗 更新时间:2023-10-29 19:52:32 26 4
gpt4 key购买 nike

所以我在 XmlReader 中使用 FileStream

using (XmlReader reader = XmlReader.Create(new FileStream(archivePath, FileMode.Open), readerSettings))
{
reader.close()
}

但是,XmlReader 中的文件在 using 作用域后仍然处于锁定状态,很奇怪,我认为 XmlReader 是要为我关闭 FileStream,是吗?

感谢您的帮助。

最佳答案

您应该能够通过 XmlReaderSettings.CloseInput 控制它。

readerSettings.CloseInput = true;
using (XmlReader reader = XmlReader.Create(new FileStream(archivePath, FileMode.Open), readerSettings))
{
// do work with the reader
}

或者,如果您不关心其他阅读器设置,则更简洁:

using (XmlReader reader = XmlReader.Create(new FileStream(archivePath, FileMode.Open), new XmlReaderSettings() { CloseInput = true }))
{
// do work with the reader
}

关于c# - 为什么 FileStream 没有被 XmlReader 关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9844978/

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