我有一段代码如下:
File.Copy(fileInfo.FullName, newPath, true);
...
File.SetAttributes(fullServerPath, FileAttributes.Normal);
File.Delete(fullServerPath);
除了一个mp4文件之外,它对所有人都很好。当尝试使用mp4文件执行此操作时,我得到UnauthorizedAccessException
,我无法弄清楚原因。正如我所说,它适用于所有其他文件类型,如pdf,doc,...
当我尝试删除文件时,如果我(或运行程序的用户)是文件的创建者,为什么会得到UnauthorizedAccessException
?
更新:我正在使用TikaOnDotNet,而且当我执行Extract
这种情况时会出现这种情况。
据我所知,它没有被另一个进程使用。在删除之前,我尝试使用fileInfo.Open(FileMode.Open, FileAccess.ReadWrite, FileShare.None);
打开它,我说我不想与任何人分享。这也很好。这很奇怪。