基礎框架 檔案操作 目錄操作

2021-06-28 09:08:26 字數 3064 閱讀 1624

下面**中的措施  適用於nsfilemanager這類物件,可以用來進行  目錄操作:

措施名稱描述

-(nsstring *)currentdirectorypath

獲取當前目錄的路徑

-(bool)changecurrentdirectorypath:path

將當前目錄的路徑更換到path

-(bool)copypath:from topath:to handler:handler

將目錄from複製到to,to所代表的目錄不能事先存在

-(bool)createdirectoryatpath:path attributes:attr

建立乙個新目錄

-(bool)fileexistsatpath:path isdirectory:(bool *)flag

檢查path是否是目錄

-(nsarray *)directorycontentsatpath:path

將目錄內容列舉出來

-(nsdirectoryenumerator *)enumeratoratpath:path

列舉目錄內容

-(bool)removefileatpath:path handler:handler

刪除空目錄

-(bool)movepath:from topath:to handler:handler

重新命名或者移動目錄,to代表的目錄不能事先存在。

下面的程式  示範了  如何進行  基本的目錄操作:

[cpp]view plain

copy

#import 

#import 

#import 

#import 

intmain(

intargc,

const

char

*argv)  

//將新建的目錄重新命名為newdirectory

if([myfilemanager movepath:directoryname topath:@

"newdirectory"

handler:nil]==no)  

//將當前目錄由可執行檔案所在目錄更換到newdirectory這個目錄

if([myfilemanager changecurrentdirectorypath:@

"newdirectory"

]==no)  

//將更換後的當前目錄路徑顯示出來,以驗證操作是否成功e

path=[myfilemanager currentdirectorypath];  

nslog(@"當前目錄路徑為:%@"

,path);  

nslog(@"所有操作成功完成。"

);  

[pool drain];  

return

0;  

}  

執行  這個程式後,可以得到  這樣的結果:

2012-05-10 13:54:52.615 sample[1256:707] 當前目錄路徑為:/users/zijin/library/developer/xcode/deriveddata/sample-bwtvtehg***kzgaqfkwvluuhrhso/build/products/debug

2012-05-10 13:54:52.618 sample[1256:707] 當前目錄路徑為:/users/zijin/library/developer/xcode/deriveddata/sample-bwtvtehg***kzgaqfkwvluuhrhso/build/products/debug/newdirectory

2012-05-10 13:54:52.619 sample[1256:707] 所有操作成功完成。

program ended with exit code: 0

在可執行檔案所在的目錄當中,我們  可以看到  這樣的情況:

(丟失。。。)

在這個程式當中

1path=[

myfilemanager 

currentdirectorypath];

這行語句  對  myfilemanager這個物件  採取了  currentdirectorypath這項措施,將  當前目錄的路徑  作為結果  儲存  在變數path當中。接著  將  當前目錄的路徑  顯示出來。然後 1[

myfilemanager

createdirectoryatpath

:directoryname

attributes

:nil]

這行語句  對  myfilemanager這個物件  採取了  createdirectoryatpath:attributes:這項措施,建立了  乙個新的目錄,而  目錄的名稱  則為  引數directoryname中設定的mydirectory。

接著的 1

[myfilemanager

movepath

:directoryname

topath

:@"newdirectory"

handler

:nil

]

這行語句  對  myfilemanager這個物件  採取了  movepath:topath:handler:這項措施,將  第乙個引數代表的目錄  移動  到當前的目錄,並且  命名為  newdirectory。由於  移動的目標目錄  就是  當前目錄,所以  這行語句  就是  給  目錄  重新命名。

movepath:topath:handler:這項措施  也可以將  整個目錄(包括  其中的內容)從檔案系統中的乙個位置  移動 到另外乙個位置。

最後的 1[

myfilemanager

changecurrentdirectorypath

:@"newdirectory"]

這行語句  對myfilemanager這個物件  採取了  changecurrentdirectorypath:這項措施,將  當前目錄  由可執行檔案所在的目錄  更換為  引數中的newdirectory這個目錄。

freecplus框架 目錄操作

目錄本文介紹的是freecplus框架的目錄操作函式和類。函式和類的宣告檔案是freecplus freecplus.h。函式和類的定義檔案是freecplus freecplus.cpp。示例程式位於freecplus demo目錄中。編譯規則檔案是freecplus demo makefile。...

目錄檔案操作

一 在不使用mfc的程式中獲得某個目錄下的所有檔名稱,包括子目錄。把檔名稱以乙個固定的程度放入乙個緩衝中,這個緩衝要足夠的大,能容下所有的檔名稱。函式的輸入為要查詢的根目錄,輸出為存放所有檔名稱的緩衝 演算法 使用遞迴 二 void findfileindir char rootdir,char s...

目錄檔案操作

include include dir opendir 目錄名字 成功時,返回乙個指向目錄檔案的指標,失敗時,返回null 同上 struct dirent readdir dir dir 成功時,返回乙個dirent結構體型別的指標,如果讀到末尾或失敗,返回null。int closedir di...