Ale*_*all 61 c# directory file-io rename
我无法在任何地方找到DirectoryInfo.Rename(To)或FileInfo.Rename(To)方法.所以,我写了自己的,我在这里发布,供任何人使用,如果他们需要它,因为让我们面对它:MoveTo方法是过度的,如果你只是想重命名一个目录或文件,将总是需要额外的逻辑:
public static class DirectoryExtensions
{
public static void RenameTo(this DirectoryInfo di, string name)
{
if (di == null)
{
throw new ArgumentNullException("di", "Directory info to rename cannot be null");
}
if (string.IsNullOrWhiteSpace(name))
{
throw new ArgumentException("New name cannot be null or blank", "name");
}
di.MoveTo(Path.Combine(di.Parent.FullName, name));
return; //done
}
}
Run Code Online (Sandbox Code Playgroud)
SLa*_*aks 115
移动和重命名之间没有区别; 你应该打电话Directory.Move
.
通常,如果您只执行单个操作,则应使用和类中的static
方法而不是创建和对象.File
Directory
FileInfo
DirectoryInfo
有关处理文件和目录的更多建议,请参阅此处.
jsm*_*ith 15
一个已经存在.如果你无法克服System.IO
命名空间的"Move"语法.有一个静态类FileSystem
的内Microsoft.VisualBasic.FileIO同时具有一个命名空间RenameDirectory
,并RenameFile
在其中了.
正如SLaks提到的,这只是一个包装Directory.Move
和File.Move
.