Obtenir un flux depuis un fichier / contenu de ressource
Est-ce le bon/la seule façon d'obtenir une Flux à partir d'un fichier de ressources?
Uri uri = new Uri(fullPath);
StorageFile storageFile =
await Windows.Storage.StorageFile.
GetFileFromApplicationUriAsync(uri);
IRandomAccessStreamWithContentType randomAccessStream =
await storageFile.OpenReadAsync();
IInputStream resourceStream = (IInputStream)
randomAccessStream.GetInputStreamAt(0);
Toutes mes autres sources (http et stockage local) retournent un objet de Flux de données, et il est pénible d'avoir à si-sinon le code qui utilise l'un ou l'autre.
J'ai aussi essayé de créer un MemoryStream hors de lui, mais je ne peux même pas trouver un moyen d'obtenir les octets... s'il vous Plaît aider.
uint size = (uint)randomAccessStream.Size;
IBuffer buffer = new Windows.Storage.Streams.Buffer(size);
await randomAccessStream.ReadAsync(buffer, size,
InputStreamOptions.None);
Stream stream = new MemoryStream(buffer); //error takes byte[] not IBuffer
IInputStream.ReadAsync() lors de la lecture d'une ressource:
http://msdn.microsoft.com/en-us/library/windows/apps/windows.storage.streams.iinputstream.readasync.aspx
tout en Stream.Read() et de Flux.ReadAsync() ressemble à ceci:
http://msdn.microsoft.com/en-us/library/system.io.stream.read.aspx
et
http://msdn.microsoft.com/en-us/library/hh137813.aspx
Grâce
source d'informationauteur swinefeaster
Vous devez vous connecter pour publier un commentaire.
Ok je l'ai trouvé!
Vous pouvez aussi le faire dans un de moins ligne: