ideajava目录显示类成员_c++ 目录操作
一、源代碼說明
本文介紹的是ccfree框架的目錄操作函數(shù)和類。
函數(shù)和類的聲明文件是ccfree/_ccfree.h。
函數(shù)和類的定義文件是ccfree/_ccfree.cpp。
示例程序位于ccfree/demo目錄中。
編譯規(guī)則文件是ccfree/demo/makefile。
二、創(chuàng)建目錄
在Linux下,如果想創(chuàng)建一個(gè)"/tmp/aaa/bbb/ccc/ddd/data.xml"的文件,必須先創(chuàng)建"/tmp/aaa/bbb/ccc/ddd",步驟如下:
1)如果"/tmp"目錄不存在,創(chuàng)建"/tmp"。
2)如果"/tmp/aaa"目錄不存在,創(chuàng)建"/tmp/aaa"。
3)如果"/tmp/aaa/bbb"目錄不存在,創(chuàng)建"/tmp/aaa/bbb"。
4)如果"/tmp/aaa/bbb/ccc"目錄不存在,創(chuàng)建"/tmp/aaa/bbb/ccc"。
5)如果"/tmp/aaa/bbb/ccc/ddd"目錄不存在,創(chuàng)建"/tmp/aaa/bbb/ccc/ddd"。
6)創(chuàng)建"/tmp/aaa/bbb/ccc/ddd/data.xml"文件。
這些操作雖然沒有多少技術(shù)含量,但也很煩人。
MKDIR函數(shù)根據(jù)絕對路徑的文件名或目錄名逐級的創(chuàng)建目錄。
函數(shù)聲明:
bool參數(shù)說明:
pathorfilename:絕對路徑的文件名或目錄名。
bisfilename:說明pathorfilename的類型,true-pathorfilename是文件名,否則是目錄名,缺省值為true。
返回值:true-創(chuàng)建成功,false-創(chuàng)建失敗,如果返回失敗,原因有大概有三種情況:1)權(quán)限不足;2)pathorfilename參數(shù)不是合法的文件名或目錄名;3)磁盤空間不足。
示例(demo30.cpp)
/*三、獲取目錄下的文件信息
ccfree框架把獲取某目錄及其子目錄中的文件列表信息的功能封裝成CDir類。
類的聲明:
// 獲取某目錄及其子目錄中的文件列表信息。CDir類的成員變量和函數(shù)的說明文字在類的聲明中已詳細(xì)描述。
我們通過一個(gè)應(yīng)用場景來演示CDir類的用法。
先執(zhí)行以下腳本生成測試目錄和文件。
mkdir執(zhí)行以上腳本后,在/tmp/root目錄中的目錄和文件列表如下:
示例(demo32.cpp)
/*運(yùn)行效果
注意事項(xiàng):
1)每次調(diào)用ReadDir方法后,把CDir類其它成員變量的值輸出到屏幕,觀察運(yùn)行效果。
2)OpenDir方法的in_MatchStr參數(shù)非常重要,在實(shí)際開發(fā)中應(yīng)用廣泛。
3)如果文件名圓點(diǎn)"."打頭,OpenDir方法將不讀取這些文件,如果您希望讀取這些文件,可以修改_OpenDir方法中的源代碼。
4)OpendDir方法的in_MaxCount參數(shù)設(shè)置了每次掃描目錄中的文件數(shù)量,建議不超過10000,如果取值過大,打開目錄的時(shí)間會比較長,還會消耗比較多的內(nèi)存。
5)OpenDir的bSort參數(shù)設(shè)置是否對m_vFileName容器進(jìn)行排序,排序會消耗資源和時(shí)間,可以不排序就不排序。
總結(jié)
以上是生活随笔為你收集整理的ideajava目录显示类成员_c++ 目录操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python自定义变量名_Python
- 下一篇: s3c2440移植MQTT