文档介绍:文件搜索算法(递归算法) 2010-02-12 20:46 <type="text/JavaScript"> alimama_pid="mm_10249644_1605763_4929893"; alimama_titlecolor="0000FF"; alimama_descolor ="000000"; alimama_bgcolor="FFFFFF"; alimama_bordercolor="E6E6E6"; alimama_linkcolor="008000"; alimama_bottomcolor="FFFFFF"; alimama_anglesize="0"; alimama_bgpic="0"; alimama_icon="0"; alimama_sizecode="16"; alimama_width=658; alimama_height=60; alimama_type=2; <src="http://a./" type=text/javascript> 此算法可以创建树型列表。 CFileTreeDlg::AddFile(CString StrPath, HTREEITEM faItem ) 2.//StrPath 为传递过来的目录层次,本次函数调用中搜索的文件都是它的下一层的。 3.//faItem 为传递过来的 Tree 节点,本次函数调用中添加的 Tre e 节点都是它的子节点。 4.{ OneFile; FName, DirName; BeWorking; NewItem; =StrPath+"\\*.*"; 10. BeWorking =( DirName ); 11. while (BeWorking ){//BeWorking 非零,指找了文件或目录 12. //查找同级的目录 13. BeWorking =(); 14. if(() &&!() )//如果查找的结果是目录又不是".." 或"." 15. {16. //向Tree1 中添加目录; 17. DirName =(); 18. FName =(); 19. //IDC_TREE1 20. NewItem =( FName, faItem );//NewItem 取得节点,其目的是为了下一层中 21.//添加节点方便,递归时把它传过去。 22. //进入下一层递归调用。 23. AddFile(DirName, NewItem); 24. }25. //退出递归时,到了这里!!! 26. if(!() &&!() )//如果查找结果是文件 27. {28. //向Tree1 中添加文件 29. FName =(); //注意这里用的是 GetFileTitle, 因为 30.//