#include <iostream> #include<boost/filesystem.hpp> int main() { boost::filesystem::path path("/test/test1"); //初始化 boost::filesystem::path old_cpath = boost::filesystem::current_path(); //取得当前程序所在文件夹 boost::filesystem::path parent_path = old_cpath.parent_path();//取old_cpath的上一层父文件夹路径 boost::filesystem::path file_path = old_cpath / "file"; //path支持重载/运算符 std::cout << path << std::endl; std::cout << old_cpath << std::endl; std::cout << parent_path << std::endl; std::cout << file_path << std::endl; if (boost::filesystem::exists(file_path)) //推断文件存在性 { std::string strPath = file_path.string(); } else { boost::filesystem::create_directory(file_path); //文件夹不存在,创建 } bool bIsDirectory = boost::filesystem::is_directory(file_path); //推断file_path是否为文件夹 boost::filesystem::recursive_directory_iterator beg_iter(file_path); boost::filesystem::recursive_directory_iterator end_iter; for (; beg_iter != end_iter; ++beg_iter) { if (boost::filesystem::is_directory(*beg_iter)) { continue; } else { std::string strPath = beg_iter->path().string(); //遍历出来的文件名称 std::cout << strPath << std::endl; } } boost::filesystem::path new_file_path = file_path / "test.txt"; if (boost::filesystem::is_regular_file(new_file_path)) //推断是否为普通文件 { int sizefile = boost::filesystem::file_size(new_file_path); //文件大小(字节) std::cout << sizefile << std::endl; } boost::filesystem::remove(new_file_path);//删除文件new_file_path getchar(); return 0; }
C++应用之Boost库-filesystem
猜你喜欢
转载自blog.csdn.net/qccz123456/article/details/80255540
今日推荐
周排行