現在、カメラからローカルストレージフォルダに戻ったjpeg画像を含むストリームを保存しようとしています。ファイルは作成されていますが、残念ながらデータがまったく含まれていません。ここで私が使用しようとしているコードは次のとおりです。Windows Phone 8のローカルフォルダに画像を含むストリームを保存しています。
public async Task SaveToLocalFolderAsync(Stream file, string fileName)
{
StorageFolder localFolder = ApplicationData.Current.LocalFolder;
StorageFile storageFile = await localFolder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
using (IRandomAccessStream fileStream = await storageFile.OpenAsync(FileAccessMode.ReadWrite))
{
using (IOutputStream outputStream = fileStream.GetOutputStreamAt(0))
{
using (DataWriter dataWriter = new DataWriter(outputStream))
{
dataWriter.WriteBytes(UsefulOperations.StreamToBytes(file));
await dataWriter.StoreAsync();
dataWriter.DetachStream();
}
await outputStream.FlushAsync();
}
}
}
public static class UsefulOperations
{
public static byte[] StreamToBytes(Stream input)
{
using (MemoryStream ms = new MemoryStream())
{
input.CopyTo(ms);
return ms.ToArray();
}
}
}
すべてのヘルプファイルの保存この方法は非常に高く評価されるだろう - 私がオンライン発見したすべてのヘルプは、テキストの保存を参照してください。私はWindows.Storage名前空間を使用しているので、Windows 8でも動作するはずです。
これはWindows Phone 8ですか?あなたは 'IsolatedStorageFile.GetUserStoreForApplication()'を使用していません –
上記の名前空間を使用できるようになり、コードはWindows 8でも動作します。 –
毎日新しい何かを学んでください:) –