private void AssertFileListing(DirectoryInfo info, IFileNameFilter filter, int expectedItems) { IEnumerator enumerator = DirectorySearcher.GetFileEnumerator(info, filter); Assert.AreEqual(expectedItems, CountItemsInEnumeration(enumerator), "Wrong number of files returned"); FileInfo[] infos = DirectorySearcher.GetFiles(info, filter); Assert.AreEqual(expectedItems, infos.Length, "Wrong number of files returned"); }
private void AssertFileListing(DirectoryInfo info, IFileNameFilter filter, int expectedItems) { IEnumerator enumerator = DirectorySearcher.GetFileEnumerator(info, filter); Assert.AreEqual(expectedItems, CountItemsInEnumeration(enumerator), "Wrong number of files returned"); FileInfo[] infos = DirectorySearcher.GetFiles(info, filter); Assert.AreEqual(expectedItems, infos.Length, "Wrong number of files returned"); }
/// <summary> /// Returns an array of <see cref="System.IO.FileInfo"/> object for the specified directory and file filter /// </summary> /// <param name="directory">The directory to search</param> /// <param name="filter">The file filter to use to filter filenames</param> /// <returns></returns> public static FileInfo[] GetFiles( DirectoryInfo directory, IFileNameFilter filter ) { ArrayList fileList = new ArrayList(); IEnumerator enumerator = GetFileEnumerator( directory, filter ); while ( enumerator.MoveNext() ) { fileList.Add( enumerator.Current ); } return (FileInfo []) fileList.ToArray( typeof ( FileInfo ) ); }
/// <summary> /// Returns an array of <see cref="System.IO.FileInfo"/> object for the specified directory and file filter /// </summary> /// <param name="directory">The directory to search</param> /// <param name="filter">The file filter to use to filter filenames</param> /// <returns></returns> public static FileInfo [] GetFiles(DirectoryInfo directory, IFileNameFilter filter) { ArrayList fileList = new ArrayList(); IEnumerator enumerator = GetFileEnumerator(directory, filter); while (enumerator.MoveNext()) { fileList.Add(enumerator.Current); } return((FileInfo [])fileList.ToArray(typeof(FileInfo))); }
private static void CopyDirectoryContents(string originalFrom, string from, string to, IFileNameFilter fileNameFilter) { if (!Directory.Exists(to)) { Directory.CreateDirectory(to); } foreach(var file in Directory.GetFiles(from)) { var destFilename = Path.Combine(to, Path.GetFileName(file)); if (fileNameFilter.IncludeFile(file.Substring(originalFrom.Length + 1))) { File.Copy(file, destFilename); } } foreach(var subdir in Directory.GetDirectories(from)) { if (fileNameFilter.IncludeFile(subdir.Substring(originalFrom.Length + 1) + @"\")) { CopyDirectoryContents(originalFrom, subdir, Path.Combine(to, Path.GetFileName(subdir)), fileNameFilter); } } }
public void AddFilter(IFileNameFilter filter) { filters.Add(filter); }
public void AddFilter(IFileNameFilter filter) { filters.Add(filter); }
public FileListingEnumerator(DirectoryInfo directory, IFileNameFilter filter) : base(directory.GetFiles(filter.SearchPattern).GetEnumerator()) { fFilter = filter; }
/// <summary> /// Returns an IEnumerator whose <c>Current</c> property returns a <see cref="System.IO.FileInfo"/> /// </summary> /// <param name="directory">The directory to search</param> /// <param name="filter">The file filter to use to filter filenames</param> /// <returns>an IEnumerator</returns> public static IEnumerator GetFileEnumerator(DirectoryInfo directory, IFileNameFilter filter) { return(new FileListingEnumerator(directory, filter)); }
private static void CopyDirectoryContents(string originalFrom, string from, string to, IFileNameFilter fileNameFilter) { if (!Directory.Exists(to)) { Directory.CreateDirectory(to); } foreach (var file in Directory.GetFiles(from)) { var destFilename = Path.Combine(to, Path.GetFileName(file)); if (fileNameFilter.IncludeFile(file.Substring(originalFrom.Length + 1))) { File.Copy(file, destFilename); } } foreach (var subdir in Directory.GetDirectories(from)) { if (fileNameFilter.IncludeFile(subdir.Substring(originalFrom.Length + 1) + @"\")) { CopyDirectoryContents(originalFrom, subdir, Path.Combine(to, Path.GetFileName(subdir)), fileNameFilter); } } }
public FileListingEnumerator( DirectoryInfo directory, IFileNameFilter filter ) : base(directory.GetFiles( filter.SearchPattern ).GetEnumerator()) { fFilter = filter; }
/// <summary> /// Returns an IEnumerator whose <c>Current</c> property returns a <see cref="System.IO.FileInfo"/> /// </summary> /// <param name="directory">The directory to search</param> /// <param name="filter">The file filter to use to filter filenames</param> /// <returns>an IEnumerator</returns> public static IEnumerator GetFileEnumerator( DirectoryInfo directory, IFileNameFilter filter ) { return new FileListingEnumerator( directory, filter ); }