Как создать файл, когда я получаю содержание его, используя класс StorageFile? Или мне нужно использовать другой класс для первоначального создания файла (например, File)? Рекомендуется ли в UWP?
Полученный контент обычно представляет собой строковый формат. Возможно, вам нужно будет создать новый пустой файл в некотором месте, часто это локальная папка текущего приложения. Затем напишите содержимое в файл, который вы только что создали. Вот очень пример демо:
string content = "postcontent";
StorageFolder localfolder = Windows.Storage.ApplicationData.Current.LocalFolder;
Windows.Storage.StorageFile sampleFile = await localfolder.CreateFileAsync("sample.pdf", Windows.Storage.CreationCollisionOption.ReplaceExisting);
await Windows.Storage.FileIO.WriteTextAsync(sampleFile, content);
Подробнее о том, как создать и записать файл с StorageFile
пожалуйста, ссылку this article. Обратите внимание, что это простой пример создания и записи файла, для реального pdf-файла, для этого требуется сложный формат записи содержимого в файл.
StorageFile
класс предназначен для работы с файлами в uwp, мы используем этот класс для создания и записи файлов, другие классы могут быть не нужны. File класс, который принадлежит System.IO
, пространство имен должно также использоваться в uwp, но рекомендуется StorageFile
.
Есть ли способ использовать класс StorageFile без создания физической копии файла
Боюсь, что нет. Как я сказал выше, StorageFile
предназначен для доступа к файловому объекту, если нет доступа к файлу? Полученный вами контент не должен быть файловым объектом, он может быть текстовым или файловым потоком.
Какой вариант лучше - сначала сохраните файл во временной папке, а затем используйте его или создайте класс StorageFile? Зачем?
Создать временный файл, и вы будете иметь StorageFile
экземпляр, а затем вы должны быть в состоянии написать принимаемый содержимое файлового потока со стороны StorageFile
объекта. Кажется, что создать временный файл в локальной папке - лучший способ, поскольку StorageFile
не может быть создан по HTTP-контенту.
Кроме того, доступ к файлам в UWP имеет специальное разрешение, нам, возможно, потребуется обратить внимание, подробнее вы можете обратиться к .