日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Visual Studio 2015 编译与使用Boost库进行文件与目录的操作

發布時間:2025/3/21 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Visual Studio 2015 编译与使用Boost库进行文件与目录的操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

1.Boost庫是一個功能非常強大的跨平臺開源C++庫,我這里只演示如何在win7下visual studio 2015里做boost庫的boost::filesystem來操作文件、目錄。
2.我的環境是windows 7 64位,visual studio 2015,所用的boost庫是boost_1_66_0-msvc-11.0-64.exe,boost的各個版本可以從這里下載,我用的版本csdn的下載地址:https://download.csdn.net/download/matt45m/11090742。

一、安裝與配置Boost庫

1.下載boost庫之后開始安裝,更改自己想要安裝在的路徑。

安裝之后的目錄如下:

2.新建一個項目vs2015的C++項目,選自己存放項目的路徑。
(1)新建一個項目。

(2)選擇項目類型,輸入項目名,點確定。

(3)從視圖調出屬性窗口。

2.開始配置boost的相關路徑。
(1)點屬性管理器,打開屬性對話框,我這里配置的是 Debug 64位。

(2)設置相VC++目錄,包含的目錄與庫目錄,看著自己的環境配置這兩個目錄。

(3)鏈接器的路徑配置,確定,配置完成。

二、使用boost庫操作文件與目錄

1.在當前項目中添加一個源文件,引入文件相關的頭文件和定義一個名字空間。

#include<boost/filesystem.hpp> //定義一個boost庫的命名空間 namespace fs = boost::filesystem;

2.文件操作代碼演示
(1)全局函數判斷當前路徑。

//初始化一個路徑string dir_path = "F:/train_faces/";//判斷傳入路徑是否存在if (fs::exists(dir_path)){std::cout << "當前傳入的目錄存在!" << endl;}//判斷傳入的路徑是否為目錄if (fs::is_directory(dir_path)){std::cout << "當前傳入的路徑是目錄" << endl;}//判斷傳入的目錄是否為空if (!fs::is_empty(dir_path)){std::cout << "當前傳入的目錄不為空目錄" << endl;}

(2)遍歷當前目錄下的子文件。

//只遍歷當前路徑下第一層文件fs::directory_iterator begin_iter(dir_path);fs::directory_iterator end_iter;for(;begin_iter != end_iter; begin_iter++ ){string file_name = begin_iter->path().string();std::cout << file_name << endl;}

(3)遞歸遍歷當前路徑下所有子文件。

//遞歸遍歷當前目錄下的所有子文件fs::recursive_directory_iterator begin(dir_path);fs::recursive_directory_iterator end;for (; begin != end; begin++){string file_name = begin->path().string();std::cout << file_name << endl;}

輸出結果:

(3)文件相關的操作。

//初始化一個路徑string dir_path = "F:/train_faces/01/1.pgm";boost::filesystem::path filePath(dir_path);//得到當前文件父目錄("F:/train_faces/01/")cout << filePath.parent_path() << endl; //得到當前文件名("1.pgm")cout << filePath.filename() << endl; //得到當前文件名轉為string("1.pgm")cout << filePath.filename().string() << endl;//得到當前文件名不包括擴展名("1")cout << filePath.stem() << endl; //得到當前文件擴展名(".pgm")cout << filePath.extension() << endl;

結語

1.boost是一個強大的C++庫,文件操作只是其中的一小部分功能,如果要使用可以看官方的文檔或者相關書箱。
2.關于boost庫的使用,如果有興趣的可以加群:487350510互相討論學習。

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Visual Studio 2015 编译与使用Boost库进行文件与目录的操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。