2014-09-24 21 views
0

我的項目支持文件中的組文件夾中有3個xml文件。我試圖創建一個數組,其中包含組文件夾中每個文件的文件名(字符串)。從組內容創建字符串數組

例...組文件夾命名XLMS

XMLS 
    one.xml 
    two.xml 
    three.xml 

我展示的方式,只有當文件是在實際文件夾(藍色)的作品。我怎樣才能做一個組文件夾(黃色)?請幫忙,謝謝。

viewDidLoad 

NSMutableString* bundlePath = [NSMutableString stringWithCapacity:4]; 

[bundlePath appendString:[[NSBundle mainBundle] bundlePath]]; 

[bundlePath appendString:@"/XMLS"]; 

NSArray *stringArray = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:bundlePath error:nil]; 

[stringArray description]; 
+1

黃色文件夾是由Xcode管理的虛擬組,它與主包中的目錄層次無關。 – KudoCC 2014-09-24 01:26:15

+0

有沒有一種方法來獲取組的內容?請提出一個建議,我可以嘗試。 – user2621075 2014-09-24 01:37:54

+0

是的,他們都在你的捆綁路徑。 :) – KudoCC 2014-09-24 01:47:12

回答

1

文件夾引用將在軟件包中創建一個目錄,允許您計算出內容。通過使用組,你不能這樣做。如果你堅持使用一個組,一個選項是創建一個包含你想要的文件名稱的清單。

請注意,這是更容易出錯,因爲您需要確保清單包含正確的文件名(即如果您更改文件名,您需要確保更新清單),您還需要加載首先顯示。爲什麼你不想在這種情況下使用文件夾引用?如果您的清單中包含的plist就可以自動地加載它作爲一個數組做這樣的事情:

NSMutableArray *stringArray = [NSArray arrayWithContentsOfFile:manifestPath]; 
+0

只要用文件夾參考文件證明是最好的方法。感謝您的回答。 – user2621075 2014-09-25 00:45:31

0

我選擇保​​留文件夾引用(藍色文件夾)內的文件。提供的代碼與我的問題相同。創建一個匹配文件夾引用內的文件名的字符串數組非常有用。

viewDidLoad 

NSMutableString* bundlePath = [NSMutableString stringWithCapacity:4]; 

[bundlePath appendString:[[NSBundle mainBundle] bundlePath]]; 

[bundlePath appendString:@"/XMLS"]; 

NSArray *stringArray = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:bundlePath error:nil]; 

[stringArray description];