public async Task WriteBytesAsync(string path, byte[] bytes, PclStorageHelper.StorageStrategy location = PclStorageHelper.StorageStrategy.Local) { var file = await PclStorageHelper.GetFileAsync(path, location).DontMarshall(); using (var fileStream = await file.OpenStreamForWriteAsync().DontMarshall()) { if (fileStream.Length > 0) { fileStream.SetLength(0); } await fileStream.WriteAsync(bytes, 0, bytes.Length).DontMarshall(); } }
public async Task <Stream> ReadStreamAsync( string path, bool ifExists = false, PclStorageHelper.StorageStrategy location = PclStorageHelper.StorageStrategy.Local) { var file = await(ifExists ? PclStorageHelper.GetIfFileExistsAsync(path, location) : PclStorageHelper.GetFileAsync(path, location)).DontMarshall(); if (file == null) { return(null); } return(await file.OpenStreamForReadAsync().DontMarshall()); }
public async Task WriteStreamAsync(string path, Stream stream, PclStorageHelper.StorageStrategy location = PclStorageHelper.StorageStrategy.Local) { var file = await PclStorageHelper.GetFileAsync(path, location).DontMarshall(); using (var fileStream = await file.OpenStreamForWriteAsync().DontMarshall()) { if (stream.Position > 0) { stream.Seek(0, SeekOrigin.Begin); } if (fileStream.Length > 0) { fileStream.SetLength(0); } await stream.CopyToAsync(fileStream).DontMarshall(); } }
public async Task <byte[]> ReadBytesAsync( string path, bool ifExists = false, PclStorageHelper.StorageStrategy location = PclStorageHelper.StorageStrategy.Local) { var file = await(ifExists ? PclStorageHelper.GetIfFileExistsAsync(path, location) : PclStorageHelper.GetFileAsync(path, location)).DontMarshall(); if (file == null) { return(null); } using (var stream = await file.OpenStreamForReadAsync().DontMarshall()) { var bytes = new byte[stream.Length]; await stream.ReadAsync(bytes, 0, bytes.Length).DontMarshall(); return(bytes); } }