2011-07-29 41 views
1

如何让此代码从目录中检索文件?例如,我的目录名称为“文件夹名称”:如何从隔离存储中检索文件

private ObservableCollection<FileItem> LoadFiles() 
{ 
    ObservableCollection<FileItem> files = new ObservableCollection<FileItem>(); 

    foreach (string filePath in this.Store.GetFileNames()) 
     files.Add(new FileItem { FileName = filePath }); 
    return files; 
} 

编辑:

我已经试过这一点,但它仍然是不工作:

private ObservableCollection<FileItem> LoadFiles() 
     { 
      ObservableCollection<FileItem> files = new ObservableCollection<FileItem>(); 


      foreach (string filePath in this.Store.GetFileNames()) 
       files.Add(new FileItem { "FlashCardApp\\" + FileName = filePath }); 
      return files; 
     } 
+0

你想对文件做什么? – Bas

+0

什么是“这个”? – Four

+0

我已经把'this.Store.GetFileNames()'中的目录名从目录中检索文件,但它不起作用。 – lala

回答

1

我终于找到了自己问题的答案。

这是它是如何假设是:通过文件夹名称,"FlashCardApp\\"后有\

private ObservableCollection<FileItem> LoadFiles() 
{ 
    ObservableCollection<FileItem> files = new ObservableCollection<FileItem>(); 

    foreach (string filePath in this.Store.GetFileNames("FlashCardApp\\")) 
     files.Add(new FileItem { FileName = filePath }); 
    return files; 
} 

,它将检索目录中的文件。

+0

这对我有用,但我必须在文件路径后添加*,例如。 “FlashCardApp \\\ *” – zi3guw

0

要检索的文件名,你可以使用System.IO

string[] filePaths = Directory.GetFiles(path, "*.txt") 

Directory类是在System.IO

+0

好吧,它没有文件格式。 – lala

+0

您可以删除GetFiles() – apophis

+0

Directory.GetFiles的第二个参数,当他试图从IsolatedStorage获取数据时,它不会真正*工作*。 –

0
DirectoryInfo di = new DirectoryInfo("c:/Folder Name"); 
FileInfo[] rgFiles = di.GetFiles("*.*"); 
foreach(FileInfo fi in rgFiles) 
{ 
//Do something 
    fi.Name   
} 
+0

它是在Windows手机上,而不是在电脑上,对不起。 – lala

+0

哦 - 对不起 - 可以只是读你的标签.. – Lysgaard

+0

谢谢你的帮助,虽然 – lala

0

我怀疑您的文件夹名称是正确的。我会建议您使用storeFile.GetDirectoryNames("*")来查看目录的正确路径。

微软写了一个great example我认为你应该尝试看看,因为你的代码没有什么明显的错误。

+0

如果我使用storeFile.GetDirectoryNames(“*”),列表将显示文件夹。但是,我希望它显示文件夹内的文件 – lala

+0

不太重要。 GetDirectoryNames显示完整路径。如果您使用GetDirectoryNames(“文件夹名称”),它会返回给您什么? –

+0

它给了我相同的结果GetDirectoryNames() – lala

相关问题