コード例 #1
0
        /// <summary>
        /// 提取指定类型的文件,排除指定属性
        /// </summary>
        /// <param name="newFolder"></param>
        /// <param name="type"></param>
        public void extractFileByType(String newFolder, String type, FileAttributes fileAttr, FileAttributes dirAttr)
        {
            DirectoryInfo newDir = new DirectoryInfo(newFolder);

            if (newDir.Exists && !newDir.FullName.ToLower().Equals(dir.FullName.ToLower()))
            {
                FileInfo[] files = newDir.GetFiles();
                for (int i = 0; i < files.Length; i++)
                {
                    if ((files[i].Attributes & fileAttr) == 0)
                    {
                        FileFunction fileFunc = new FileFunction(files[i]);
                        if (fileFunc.FileExtName.ToLower().Equals(type.ToLower()))
                        {
                            fileFunc.MoveTo(dir.FullName);
                        }
                    }
                }

                DirectoryInfo[] dirs = newDir.GetDirectories();
                for (int i = 0; i < dirs.Length; i++)
                {
                    if ((dirs[i].Attributes & dirAttr) == 0)
                    {
                        DirectoryFunction dirFunc = new DirectoryFunction(dir);
                        dirFunc.extractFileByType(dirs[i].FullName, type, fileAttr, dirAttr);
                    }
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 批量移动文件,排除属性
        /// </summary>
        /// <param name="newFolder"></param>
        /// <param name="attr"></param>
        public void batchMoveTo(String newFolder, FileAttributes attr)
        {
            DirectoryInfo newDir = new DirectoryInfo(newFolder);

            if (newDir.Exists)
            {
                if (!newDir.FullName.ToLower().Equals(dir.FullName.ToLower()))
                {
                    for (int i = 0; i < childFiles.Length; i++)
                    {
                        if ((childFiles[i].Attributes & attr) == 0)
                        {
                            FileFunction file = new FileFunction(childFiles[i]);
                            file.MoveTo(newDir.FullName);
                        }
                    }
                }
            }
        }