2013-05-01 3 views
0

J'ai un fichier image dans mon LocalFolder qui est téléchargé lorsqu'un bouton est cliqué dans l'application.Enregistrement d'un fichier à partir du LocalFolder

J'ai besoin d'utiliser FileSavePicker pour déplacer ladite image du LocalFolder vers un autre dossier de l'utilisateur, par exemple. Bureau

L'image est dans le dossierlocal, et le code que je utilise pour l'enregistrer il y a:

var imageFile = await ApplicationData.Current.LocalFolder.CreateFileAsync(
     "image.png", CreationCollisionOption.ReplaceExisting); 
var fs = await imageFile.OpenAsync(FileAccessMode.ReadWrite); 
DataWriter writer = new DataWriter(fs.GetOutputStreamAt(0)); 
writer.WriteBytes(await response.Content.ReadAsByteArrayAsync()); 
await writer.StoreAsync(); 
writer.DetachStream(); 
await fs.FlushAsync(); 

Le code actuel je pour la sauvegarde (incomplète):

FileSavePicker saver = new FileSavePicker(); 
saver.SuggestedStartLocation = PickerLocationId.Desktop; 
saver.SuggestedFileName = "image.png"; 
StorageFile file = await saver.PickSaveFileAsync(); 

Quelqu'un peut-il me conseiller sur la façon dont je peux effectuer cela?

+0

Il vous manque une déclaration '' using' pour la FileStream' – Romoku

+0

Correction rapide est un '' IRandomAccessStream' pas FileStream'. – Romoku

Répondre

1

Vous devriez profiter de FileIO pour écrire vos données car ce n'est pas complexe.

var data = await response.Content.ReadAsByteArrayAsync(); 
var localFolder = ApplicationData.Current.LocalFolder; 

var imageFile = await localFolder.CreateFileAsync(
     "image.png", CreationCollisionOption.ReplaceExisting); 
await FileIO.WriteBytesAsync(imageFile, data).AsTask(); 
+0

Est-ce que cela écrit dans le LocalFolder? Je ne suis pas sûr de comprendre. J'essaie de faire en sorte qu'une image qui a été précédemment téléchargée dans le LocalFolder soit enregistrée dans un autre emplacement, comme le Bureau. – ReignOfComputer

+0

Consultez cette [vidéo Pluralsight] (http://www.youtube.com/watch?v=VupeyqLsN10) pour un didacticiel rapide sur ce que vous devez faire pour écrire des fichiers. – Romoku

Questions connexes