将图像资源保存到 UWP 本地文件夹中的存储文件

Unc*_*Ben 1 .net c# storage uwp

我的 UWP 项目 ( ) 的 Assets 文件夹中有一张图像"Assets/Nophoto.jpg",我想将其另存为StorageFile应用程序的本地文件夹中。

我见过的将图像保存在 a 中的唯一方法StorageFile是使用FilePicker.

FileOpenPicker FilePicker = new FileOpenPicker();
            FilePicker.FileTypeFilter.Add(".jpeg");
            FilePicker.FileTypeFilter.Add(".png");
            FilePicker.FileTypeFilter.Add(".jpg");
            FilePicker.ViewMode = PickerViewMode.Thumbnail;
            FilePicker.CommitButtonText = "Picture";
            FilePicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;

            PictureFile = await FilePicker.PickSingleFileAsync();
Run Code Online (Sandbox Code Playgroud)

我将如何将图像文件(.jpeg、.png、.bmp 等)存储在StorageFile

Rom*_*asz 5

回答你的问题:

我的 UWP 项目的 Assets 文件夹中有一张图像(“Assets/Nophoto.jpg”),我想将其保存为应用程序本地文件夹中的 StorageFile。

例如,您可以这样做 - 通过Uri获取文件(请注意,也可以通过InstaledLocation文件夹访问它):

StorageFile sourceFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/Nophoto.jpg"));
await sourceFile.CopyAsync(ApplicationData.Current.LocalFolder);
Run Code Online (Sandbox Code Playgroud)

一旦您拥有StorageFile(无论是否通过选择器/从安装文件夹/其他获得),您就可以将其复制到其他StorageFolder。如果您通过流或像素缓冲区拥有图像,则可以创建一个文件并使用流写入该文件。