我有一个.exe,当我运行它时,一个目录中的某些文件被锁定。我也有可能在这个.exe中重命名该文件夹,当我想重命名它当然我得到一些文件被锁定的错误。其实我有两个问题: 1)什么功能导致文件锁定?我的意思是,例如,FileAccess枚举会对此产生影响吗? 2)我该如何解决这个问题?
答案 0 :(得分:3)
无论何时打开一个流(或包装流的编辑器/阅读器),都会锁定文件。
您需要使用using
语句关闭您的信息流。
答案 1 :(得分:1)
1)什么功能导致文件锁定?
这是因为某些进程(可能是您的程序)打开并锁定了一个文件,导致其他进程无法操作它。
2)我该如何解决这个问题?
当您尝试执行重命名时,请确保没有任何进程(包括您自己的进程)保持文件处于打开状态。这通常意味着确保始终关闭文件流,这可以在您创建或打开文件时通过Using
statement自动处理。