过去用C处理系统文件很繁琐,需要调用一些系统接口,什么文件夹递归都要自己去写,而且可移植性比较低,用boost filesystem可以解决这些问题。
// 判断是不是文件夹 #include <stdio.h> #include “boost/filesystem.hpp” int main() { boost::filesystem::path path("/usr/local/include"); // random pathname bool result = boost::filesystem::is_directory(path); printf(“Path is a directory : %d\n”, result); return 0; }
// rename #include <stdio.h> #include “boost/filesystem.hpp” int main() { boost::filesystem::path path("/home/user1/abc"); boost::filesystem::rename(path, "/tmp/def"); return 0; }
http://www.boost.org/doc/libs/1_45_0/libs/filesystem/v2/doc/reference.html
http://www.ibm.com/developerworks/cn/aix/library/au-boostfs/index.html