毎度のお約束、本記事はプレビュー状態のOS、IDE、SDKを利用しております。製品版では異なる可能性があります。
本記事はWindows 10向けのユニバーサルWindowsアプリについて学んだことを残して行く記事です。
これまでの記事はカテゴリ「UWP(Win 10) Preview」を参照ください。
今回もユニバーサルWindowsアプリのサンプルを動かしてみて、中身を解説します。今回はFilePickerを用いたファイル操作です。
ファイルピッカーを利用すると、開くファイルを選択するためのポップアップを表示して、ユーザーにファイルを選択させることができます。
ファイルピッカーを利用してファイルを一枚選択させます。
FileOpenPicker openPicker = new FileOpenPicker(); openPicker.ViewMode = PickerViewMode.Thumbnail; openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; openPicker.FileTypeFilter.Add(".jpg"); openPicker.FileTypeFilter.Add(".jpeg"); openPicker.FileTypeFilter.Add(".png"); StorageFile file = await openPicker.PickSingleFileAsync();
PickSingleFileAsyncメソッドを利用します。
一枚の時と処理自体はあまり変わりません。
FileOpenPicker openPicker = new FileOpenPicker(); openPicker.ViewMode = PickerViewMode.List; openPicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary; openPicker.FileTypeFilter.Add("*"); IReadOnlyList<StorageFile> files = await openPicker.PickMultipleFilesAsync();
PickMultipleFilesAsyncメソッドを利用して、結果はリストとして受け取ります。
StorageFolder形式でフォルダーを受け取ります。
FolderPicker folderPicker = new FolderPicker(); folderPicker.SuggestedStartLocation = PickerLocationId.Desktop; folderPicker.FileTypeFilter.Add(".docx"); folderPicker.FileTypeFilter.Add(".xlsx"); folderPicker.FileTypeFilter.Add(".pptx"); StorageFolder folder = await folderPicker.PickSingleFolderAsync();
ファイルを保存します。
FileSavePicker savePicker = new FileSavePicker(); savePicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary; savePicker.FileTypeChoices.Add("Plain Text", new List<string>() { ".txt" }); savePicker.SuggestedFileName = "New Document"; StorageFile file = await savePicker.PickSaveFileAsync(); if (file != null) { CachedFileManager.DeferUpdates(file); await FileIO.WriteTextAsync(file, file.Name); FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file);
Please give us your valuable comment