C#里面,重命名文件时,没有 rename 这个功能,使用的是FileInfo.MoveTo的方式,MoveTo 到原目录里一个新的名字,即实现了重命名
string newName = txtFileName.Text.Trim(); string oldName = Request.QueryString["fileName"]; RSPSession sessionRsp = (RSPSession)Session["RSPSetting"]; string basePath = sessionRsp.BaseFolder; string currPath = basePath + sessionRsp.CurrentRelFolder; string sourceFileName = ""; if (!string.IsNullOrEmpty(newName)) { string currFilePath = Path.Combine(currPath, oldName); sourceFileName = currFilePath; string extension = sourceFileName.Substring(sourceFileName.LastIndexOf('.'), sourceFileName.Length - sourceFileName.LastIndexOf('.')); if (File.Exists(Path.Combine(currPath, newName+extension))) { Response.Write("文件夹中存在此名称文件,请更改文件名。"); } else { currFilePath = Path.Combine(currPath, newName); FileInfo fileInfo = new FileInfo(sourceFileName); fileInfo.MoveTo(currFilePath + extension); Response.Write(""); } }
FileInfo.MoveTo 方法
将指定文件移到新位置,并提供指定新文件名的选项。