2017-11-09 12 views
1

LocalStateフォルダにあるすべての "* .csv"ファイルを取得しようとしています。次のエラーが発生します。UWP GetFilesAsync

System.ArgumentException: 'パラメータが間違っています。

 StorageFolder appInstalledFolder = ApplicationData.Current.LocalFolder; 
     StorageFolder assets = await appInstalledFolder.GetFolderAsync("*.csv"); 
     var files = await assets.GetFilesAsync(); 
+6

'* .csv'が有効なフォルダ名ではありませんが。 – SLaks

+0

また、 '.LocalFolder'はあなたのインストールフォルダではなく、その下のあなたのローカルデータフォルダです。 –

答えて

3

このファイルのクエリを使用して達成することができます:

//this may be any folder you want. 
StorageFolder folder = ApplicationData.Current.LocalFolder; 
var options = new QueryOptions(); 
options.FileTypeFilter.Add(".csv");//this will add .csv files to query options 
options.FolderDepth = FolderDepth.Deep;//optional 
StorageFileQueryResult query = folder.CreateFileQueryWithOptions(options); 
IReadOnlyList<StorageFile> fileList = await query.GetFilesAsync(); 

MSDN - StorageFileQueryResult

・ホープ、このことができます。..

0

次のコードは、*の.csvプロパティを持つファイルが見つかりました:

は、ここに私のコードです。

IReadOnlyList<StorageFile> x = await ApplicationData.Current.LocalFolder.GetFilesAsync(); 
     int tempCt = x.Count; 
     foreach (StorageFile file in x) 
     { 

      if (file.Name.ToString().Contains("csv")) 
      { 
       sb.Append(file.Name + System.Environment.NewLine); 
      } 
     } 

ベストではないかもしれませんが、動作します。