private bool TryRenameFile(string newFileName) { bool success; var fileInfo = FileManipulator.GetFileInfo(this.Filepath); var currentFileName = fileInfo.Name; var destPath = this.Filepath.Replace(currentFileName, newFileName); try { if (currentFileName.EqualsIgnoreCase(newFileName)) { RenameFileAsTemp(fileInfo); } fileInfo.MoveTo(destPath); success = true; } catch (Exception ex) { LogWriter.Write($"FileManipulator.RenameFile() - Can not rename (move) " + $"'{this.Filepath}' to '{destPath}'. {ex.GetType()}: \"{ex.Message}\""); success = false; } return(success); }
private void RenameFolder(DirectoryInfo currentDirectory, string destDirectory) { try { FileManipulator.CreateDirectory(destDirectory); MoveFileAfterDirectoryRename(destDirectory); } catch (Exception ex) { LogWriter.Write($"FileManipulator.RenameFolder - Can not rename (move) '{currentDirectory.FullName}' " + $"to '{destDirectory}'. {ex.GetType()}: \"{ex.Message}\""); throw; } }
private void RenameDirectory(Regex directoryRegex, string newName) { string newDirectory = CreateSanitizedDirectoryName(directoryRegex, newName); DirectoryInfo currentDirectory = FileManipulator.GetDirectoryInfo(this.Directory); if (this.Directory != newDirectory) { if (this.Directory.EqualsIgnoreCase(newDirectory)) { RenameDirectoryAsTemp(currentDirectory); currentDirectory = FileManipulator.GetDirectoryInfo(this.Directory); } RenameFolder(currentDirectory, newDirectory); } FileManipulator.DeleteEmptyFolders(currentDirectory); }