如何重命名其下有多個文件夾和文件的目錄? Directory.Move()保持拋出錯誤,我讀了你不能在非空目錄上使用它。使用子文件夾和文件重命名目錄
1
A
回答
3
你總是可以執行REN命令行方式:
REN Dir1 Dir2
您也可以嘗試:
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(Server.MapPath("Dir1"));
di.MoveTo(Server.MapPath("Dir2"));
下面是使用REN方法的粗略C#版本:
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.UseShellExecute = false;
startInfo.RedirectStandardInput = true;
startInfo.RedirectStandardOutput = true;
startInfo.FileName = "cmd.exe";
startInfo.WorkingDirectory = "D:\\Temp";
Process oProcess = Process.Start(startInfo);
oProcess.StandardInput.WriteLine(@"Echo on");
oProcess.StandardInput.WriteLine(@"ren ~test2 ~test1");
oProcess.StandardInput.WriteLine(@"EXIT");
string output = oProcess.StandardOutput.ReadToEnd();
oProcess.WaitForExit();
Console.Write(output);
oProcess.Close();
+0
對不起,但這必須從C#代碼完成。 –
+0
@TravisJ:更新了使用ren方法的C#機制。 –
+0
非常感謝,使用DirectoryInfo和MapPath一起工作的建議非常好,我很感謝幫助! –
相關問題
- 1. 重命名文件夾,子文件夾和文件
- 2. 在bash中重命名文件夾,文件和子文件夾
- 3. 重命名子文件夾
- 4. 使用BATCH遞歸重命名給定目錄中的文件和文件夾
- 5. 重命名目錄和一些包含的文件/子目錄
- 6. 使用批量重命名用戶目錄中的文件夾
- 7. 重命名目錄中的文件夾中的所有文件
- 8. Windows重命名子文件夾命令
- 9. 使用zmv重命名子文件夾中的文件
- 10. 使用if()重命名子文件夾中的文件
- 11. 使用powershell重命名活動目錄中的文件夾
- 12. PHP將所有使用子目錄的文件重命名爲新文件名
- 13. 使用PowerShell重命名目錄中每個文件夾中的每個文件
- 14. Python - 根據子文件夾和文件名重命名子文件夾中的文件II
- 15. 批量遍歷子文件夾和重命名文件
- 16. Rsynch和SSH:重命名文件夾時只重命名文件夾
- 17. 如何獲取目錄和文件名及其子文件夾
- 18. 使用RegEx重命名文件夾
- 19. 重命名與子標籤的子文件夾中的文件
- 20. Skydrive重命名文件夾
- 21. 重命名文件夾
- 22. SVN文件夾重命名
- 23. PHP重命名文件夾
- 24. 重命名文件夾中
- 25. 重命名文件夾
- 26. 重命名文件夾中的文件
- 27. 文件夾/文件重命名
- 28. 使用文件夾名稱在powershell中重命名文件
- 29. 使用文件夾名稱作爲前綴重命名文件
- 30. Perl的重命名文件夾和文件文件::查找
什麼錯誤?這裏沒有太多可以繼續。 –
你在哪裏讀過它不能用於非空目錄?你在處理異常嗎?如果是這樣,什麼是例外? –
正如其他人所說你需要添加更多信息,文檔中沒有任何內容(http://msdn.microsoft.com/en-us/library/system.io.directory.move.aspx),它說它可以'不能用於非空目錄,但可以引發大量記錄的錯誤,例如試圖將目錄移動到已存在的路徑。更詳細的人可以給你一個有用的答案 – RobV