楼主的这个问题可以说是C#的一个缺陷吧。
System.IO.Directory.Move("D:\\a","D:\\aaa") 这种方式只要是该文件夹下有任何文件都会报错拒绝访问。
一般的解决方法是:目录copy,将拷贝到的目标地址设定成想要的文件名,然后删除原文件。
该方法在原文件夹下无 正在使用 的文件时是可行的。但是如果有文件正在使用,或者原文件比较大的话,处理起来也很麻烦。
最简单的解决方法:在asp.net中引用VB!
1.先在项目中添加引用:Microsoft.VisualBasic
然后在所需使用的文档中加上using Microsoft.VisualBasic.Devices; 命名空间
2.就下面两行
Computer MyComputer = new Computer();
MyComputer.FileSystem.RenameFile(FileName, newFileName);
其中FileName是你所要重命名的文件的全路径,newFileName仅仅是目标文件名;
System.IO.Directory.Move("D:\\a","D:\\aaa")
if (Directory.Exists(strOldFileName))
{
try
{
Directory.Move(strOldFileName, strNewFileName);
if (Directory.Exists(strNewFileName))
{
Directory.Delete(strOldFileName);
}
}
catch
{
}
}
本节视频我们来聊一聊如何新建与重命名文件夹。Treelab 官网:www.treelab.com.cn
选中文件夹,右击重命名就可以了