在信息爆炸的年代里,把各種信息分類已經是一種非常必要的功能,比如把股票行情數據保存到硬盤里,就需要分開幾個目錄保存。比如你寫
LOG
到硬盤時,也需要分成幾個目錄來保存,這樣讓維護人員很好地找到出錯的信息,或者有用的信息。像我在開發銀行的信用卡系統時,就需要把所有通過網絡傳送的數據全部生成文本文件保存到當日的目錄里,也就是說每天都需要創建一個目錄,把所有交易的數據生成
LOG
保存進去。那么面對這樣的需求,你是怎么樣去創建目錄的呢?這就需要使用到
Windows API
函數
CreateDirectory
創建目錄,當然目錄過多時也需要調用函數
RemoveDirectory
來刪除不需要的目錄,然而函數
RemoveDirectory
只能刪除空的目錄,也就是目錄下沒有文件和子目錄才能刪除。
?
函數
CreateDirectory
和
RemoveDirectory
聲明如下:
?
WINBASEAPI
BOOL
WINAPI
CreateDirectoryA(
??? __in???? LPCSTR lpPathName,
??? __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes
??? );
WINBASEAPI
BOOL
WINAPI
CreateDirectoryW(
??? __in???? LPCWSTR lpPathName,
??? __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes
??? );
#ifdef UNICODE
#define CreateDirectory?CreateDirectoryW
#else
#define CreateDirectory?CreateDirectoryA
#endif // !UNICODE
?
WINBASEAPI
BOOL
WINAPI
RemoveDirectoryA(
??? __in LPCSTR lpPathName
??? );
WINBASEAPI
BOOL
WINAPI
RemoveDirectoryW(
??? __in LPCWSTR lpPathName
??? );
#ifdef UNICODE
#define RemoveDirectory?RemoveDirectoryW
#else
#define RemoveDirectory?RemoveDirectoryA
#endif // !UNICODE
?
lpPathName
是目錄的路徑。
lpSecurityAttributes
是目錄的安全屬性。
返回值
是執行是否成功。
?
調用函數的例子如下:
#001?//
創建目錄。
#002?????????????? //
蔡軍生
?2007/10/16 QQ:9073204
深圳
#003?????????????? std::wstring strDir(_T("c:\\log"));
#004?????????????? if (!CreateDirectory(strDir.c_str(),NULL))
#005?????????????? {
#006??????????????????? OutputDebugString(_T("
創建目錄不成功
\r\n"));????????????????????????
#007??
#008?????????????? }
#009?????????????? else
#010?????????????? {
#011??????????????????? //
刪除空目錄。
#012??????????????????? RemoveDirectory(strDir.c_str());
#013?????????????? }
#014?
?
?
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1828185
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
