我正在尝试读取XML文件并将数据导出到DB。我使用XMLDocument来读取内容。导出内容后,我将文件移动到存档位置。为了避免在移动之前发生名称冲突,我附加了带有时间戳的文件名。问题是当我在一个时间点重复导出相同的xml文件时,我得到一个异常“进程无法访问该文件,因为它正被另一个程序使用”。
我的猜测是内存中加载的xml文档尚未释放。有没有办法避免这个问题?
更新
我尝试了所有与读取和导出xml文件相关的代码。我的代码现在只有这些行
fName = DateTime.Now.ToString("yyyyMMddhhmmss") + fileName;
fName = destinationPath + "\\" + fName;
File.Move(sourcePath, fName);
现在,当我第一次运行它时工作正常。然后我等待2秒然后尝试再次导出它现在它给我一个例外
答案 0 :(得分:0)
在一个时间点内相同的xml不能 - 至少毫秒必须是不同的。但我认为你会得到很多文件。可能你需要改变方式