2011-02-28 66 views
0

我想獲取子文件夾在字符串數組中保存的所有文件。獲取文件在一個子文件夾中@ Isolated Storage - WP7

所以,我已經試過類似如下:

var IOstore = IsolatedStorageFile.GetUserStoreForApplication(); 
string searchpath = System.IO.Path.Combine("product", ProductName); 
string filesInSubDirs[] = IOstore.GetFileNames(searchpath);

但我得到了在「產品」文件夾中的所有文件。我也嘗試用「productname」作爲參數。

感謝您的幫助。

回答

5

的子文件夾中的搜索模式需要包括在年底模式相匹配的任何文件,這將使你的代碼像下面的「*。*」:

var IOstore = IsolatedStorageFile.GetUserStoreForApplication(); 
string searchpath = System.IO.Path.Combine("product", ProductName); 
searchpath = string.Format("{0}\\*.*", searchpath); 
string filesInSubDirs[] = IOstore.GetFileNames(searchpath);
+0

哼哼確定,當我寫在子文件夾,我應該使用相同的模式? – user569574 2011-02-28 14:14:23

+0

保存時不需要應用「*。*」模式,僅用於查詢。只需將路徑與子文件夾和文件名連接即可。 – 2011-02-28 14:25:59

+0

它是我做的,但沒有工作。 thx很多爲我們的幫助 – user569574 2011-02-28 14:33:40

0

有些事情,你可能想嘗試。 (這是一種左場回答,對不起)。在我的Dropbox客戶端http://sharpdropbox.codeplex.com/)中,我有一系列System.IO.File,System.IO.FileInfo,System.IO.Directory和System.IO.DirectoryInfo的外觀。他們工作很好,我測試了他們。

基本上,您添加一個Using或Import for System.IO.IsolatedStorage,然後添加PSFile,PSDirectory,PSFileInfo或PSDirectoryInfo。它使我不必記住所有的細微差別......例如,如果你正在查詢一個目錄,它知道要添加一個斜槓等等。順便說一句,「PS」前綴代表「持久存儲」,這是IsolatedStorage有時是有的所謂的(從「我」開始他們意味着他們是接口..並沒有前綴使事情更令人困惑)。

無論如何,你可以抓住從源代碼或我相信最後的版本有這些DLL爲他們(這就是所謂的像「IsolatedStorageFacade-WP7」)

相關問題