123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255 |
- #ifndef __FILEHELPING_20150818__
- #define __FILEHELPING_20150818__
- #pragma once
- #include "findfile.h"
- #include "filekernel.h"
- namespace filehelping
- {
- class AFX_CLASS_EXPORT filehelpImpl :
- public filekernel::findfile,
- public filekernel::filefindInterface,
- public filekernel::filecompareInterface
- {
- public:
- filehelpImpl(void);
- ~filehelpImpl(void);
- public:
- // 查找全部
- BOOL getall(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN OUT STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN OUT STR_VEC *pvtnames, // 返回要查找的文件名(无路径,包含扩展名);
- IN OUT STR_VEC *pvtnames_noext, // 返回要查找的文件名(无路径,不含扩展名);
- IN OUT STR_VEC *pvtfolders // 返回要查找的子目录;
- );
- BOOL getsubfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN STR_VEC *pvtfolders // 返回子文件夹;
- );
- BOOL getallsubfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN STR_VEC *pvtfolders // 返回所有子文件夹;
- );
- //////////////////////////////////////////////////////////////////////////
- BOOL getfiles_findin_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles // 返回要查找的文件全名;
- );
- BOOL getfiles_findout_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN OUT STR_VEC *pvtfiles // 返回要查找的文件全名;
- );
- BOOL getfiles_within_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles // 返回要查找的文件全名;
- );
- //////////////////////////////////////////////////////////////////////////
- BOOL getnames_findin_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,包含扩展名);
- );
- BOOL getnames_findout_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,包含扩展名);
- );
- BOOL getnames_within_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtnames // 返回要查找的文件全名;
- );
- //////////////////////////////////////////////////////////////////////////
- BOOL getnames_findin_subfolder_ex(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,不含扩展名);
- );
- BOOL getnames_findout_subfolder_ex(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,不含扩展名);
- );
- BOOL getnames_within_subfolder_ex(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,不含扩展名);
- );
- //////////////////////////////////////////////////////////////////////////
- BOOL getfilesnames_findin_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,包含扩展名);
- );
- BOOL getfilesnames_findout_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,包含扩展名);
- );
- BOOL getfilesnames_within_subfolder(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,包含扩展名);
- );
- //////////////////////////////////////////////////////////////////////////
- BOOL getfilesnames_findin_subfolder_ex(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,不含扩展名);
- );
- BOOL getfilesnames_findout_subfolder_ex(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,不含扩展名);
- );
- BOOL getfilesnames_within_subfolder_ex(
- IN LPCTSTR lpfolder, // 要查找的目录;
- IN LPCTSTR lpfindext, // 要查找的扩展名;
- IN STR_VEC *pvtfiles, // 返回要查找的文件全名;
- IN STR_VEC *pvtnames // 返回要查找的文件名(无路径,不含扩展名);
- );
- public:
- //////////////////////////////////////////////////////////////////////////
- BOOL comparename_findin_names(IN LPCTSTR name);
- // 两个文件对比,是否同名;
- BOOL comparename_2file(
- IN LPCTSTR file1, // 文件1(全路径);
- IN LPCTSTR file2 // 文件2(全路径);
- );
- // 指定文件名,与一组文件名对比;
- BOOL comparename_findin_names(
- IN LPCTSTR name, // 文件名(无路径,不含扩展名);
- IN STR_VEC& vtnames // 一组文件名(无路径,不含扩展名);
- );
- // 指定文件名,与一组文件对比;
- BOOL comparename_findin_files(
- IN LPCTSTR name, // 文件名(不含扩展名);
- IN STR_VEC& vtfiles // 一组文件(全路径);
- );
- // 指定文件名,与一文件夹对比;
- BOOL comparename_findin_folder(
- IN LPCTSTR name, // 文件名(不含扩展名);
- IN LPCTSTR folder, // 文件夹;
- IN LPCTSTR findext, // 要查找的扩展名;
- IN BOOL bsubfolder // 是否查找文件夹内的子目录;
- );
- //////////////////////////////////////////////////////////////////////////
- // 指定一组文件名,与另一组文件名对比;
- INT comparenames_findin_names(
- IN STR_VEC vtSrcnames, // 指定的一组源文件名(无路径,不含扩展名);
- IN STR_VEC vtDesnames, // 指定的一组目标文件名(无路径,不含扩展名);
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- // 指定一组文件名,与一组文件(全路径)对比;
- INT comparenames_findin_files(
- IN STR_VEC vtnames, // 指定的一组源文件名(无路径,不含扩展名);
- IN STR_VEC vtfiles, // 指定的一组目标文件(全路径);
- IN LPCTSTR findext, // 要查找的扩展名;
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- // 指定的一组文件名,与一文件夹对比;
- INT comparenames_findin_folder(
- IN STR_VEC vtnames, // 指定的一组源文件名(无路径,不含扩展名);
- IN LPCTSTR folder, // 文件夹;
- IN BOOL bsubfolder, // 是否查找文件夹内的子目录;
- IN LPCTSTR findext, // 要查找的扩展名;
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- //////////////////////////////////////////////////////////////////////////
- // 指定一文件,与一组文件名对比;
- BOOL comparefile_findin_names(
- IN LPCTSTR file, // 文件1(全路径);
- IN STR_VEC& vtnames // 指定的一组文件名(无路径,不含扩展名)
- );
- // 指定一文件,与一组文件对比;
- BOOL comparefile_findin_files(
- IN LPCTSTR file, // 文件(全路径);
- IN STR_VEC& vtfiles, // 指定的一组文件(全路径)
- IN LPCTSTR findext // 要查找的扩展名;
- );
- // 指定一文件,与一文件夹对比;
- BOOL comparefile_findin_folder(
- IN LPCTSTR file, // 文件(全路径);
- IN LPCTSTR folder, // 文件夹;
- IN BOOL bsubfolder, // 是否查找子文件夹;
- IN LPCTSTR findext // 要查找的扩展名;
- );
- //////////////////////////////////////////////////////////////////////////
- // 指定一组文件,与另一组文件对比;
- INT comparefiles_findin_files(
- IN STR_VEC &vtfiles1, // 指定的一组源文件;
- IN STR_VEC &vtfiles2, // 指定的一组目标文件;
- IN LPCTSTR findext, // 要查找的扩展名;
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- // 指定一组文件,与一文件夹对比;
- INT comparefiles_findin_folder(
- IN STR_VEC &vtfiles, // 指定的一组源文件;
- IN LPCTSTR folder, // 指定的文件夹;
- IN BOOL bsubfolder, // 是否查找子文件夹;
- IN LPCTSTR findext, // 要查找的扩展名;
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- // 文件夹自我对比(所有子文件夹对比)
- INT comparefolderself(
- IN LPCTSTR folder, // 指定文件夹;
- IN LPCTSTR findext, // 要查找的扩展名;
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- // 指定一文件夹,与另一文件夹对比;
- INT comparefolder_findin_folder(
- IN LPCTSTR folder1, // 指定源文件夹;
- IN LPCTSTR folder2, // 指定目标文件夹;
- IN BOOL bsubfolder, // 是否查找子文件夹;
- IN LPCTSTR findext, // 要查找的扩展名;
- OUT STR_VEC *pvtIsonym = NULL // 返回同名的文件名;
- );
- };
- };
- #endif
|