/// <summary> /// delete a file /// </summary> /// <param name="path">pathname of the file to delete</param> public void FileDelete(string path) { var pathInfo = MtpPath.GetPathInfo(path); if (!pathInfo.IsMtpPath) { _fileUtilities.FileDelete(path); return; } var device = GetDevice(pathInfo); device.Delete(pathInfo.RelativePathOnDevice); }
private void CreateFolderIfNeeded() { string folder = Path.GetDirectoryName(_syncItem.DestinationPath); IDirectoryInfo dir = _directoryInfoProvider.GetDirectoryInfo(folder); if (!dir.Exists) { dir.Create(); } if (_fileUtilities.FileExists(_syncItem.DestinationPath)) { _fileUtilities.FileDelete(_syncItem.DestinationPath); } }
/// <summary> /// purge a folder, removing any files that were automatically generated first /// </summary> /// <param name="folder">folder to delete</param> public void PurgeFolder(IDirectoryInfo folder) { IFileInfo[] files; try { files = folder.GetFiles("*.*"); } catch (DirectoryNotFoundException) { // if the folder is not there then there is nothing to do return; } foreach (IFileInfo file in files) { if (_filesThatCanBeAutomaticallyDeleted.Contains(file.Name.ToLower(CultureInfo.InvariantCulture))) { _fileUtilities.FileDelete(file.FullName); } } folder.Delete(); }
private static void DoDelete(IList <IFileInfo> files, IList <IDirectoryInfo> folders) { IFileUtilities fileUtilities = _iocContainer.Resolve <IFileUtilities>(); IEpisodePurger podcastEpisodePurger = _iocContainer.Resolve <IEpisodePurger>(); foreach (IFileInfo fileInfo in files) { fileUtilities.FileDelete(fileInfo.FullName); } foreach (IDirectoryInfo folder in folders) { try { podcastEpisodePurger.PurgeFolder(folder); } catch (Exception exception) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Cannot delete folder: {0}", folder.FullName); Console.WriteLine(exception.ToString()); Console.ResetColor(); } } }
private void DeleteItem(IFileInfo fileInfo) => FileUtilities.FileDelete(fileInfo.FullName);