Асинхронный метод для конвертирования StorageFile в массив байтов:

public static async Task<byte[]> GetBytesAsync(StorageFile file)
{
	byte[] fileBytes = null;
	if (file == null) return null;
	using (var stream = await file.OpenReadAsync())
	{
		fileBytes = new byte[stream.Size];
		using (var reader = new DataReader(stream))
		{
			await reader.LoadAsync((uint)stream.Size);
			reader.ReadBytes(fileBytes);
		}
	}
	return fileBytes;
}

В качестве аргумента передаем StorageFile, на выходе получаем массив.

Теги: сниппет, c#, windows

Редактировать