次のコードを使用して、XAP から分離ストレージに複数の画像ファイルを保存しようとしています。約100ファイルを保存する予定です。問題はライン
sri = Application.GetResourceStream(uri)
途中で null を返します。エミュレーターが保存できるファイル数に制限はありますか? または、何かが足りないのかもしれません..
private static void SaveImageFileToIsoStore()
{
string[] files = AllFilesInImagesCatFolder();
using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication())
{
if (!isoStore.FileExists(files[0]))
{
foreach (string f in files)
{
IsolatedStorageFileStream fileStream = isoStore.CreateFile(f);
StreamResourceInfo sri = null;
Uri uri = new Uri("Images/cat/" + f, UriKind.Relative);
Debug.WriteLine(f);
sri = Application.GetResourceStream(uri);
BitmapImage bitmap = new BitmapImage();
bitmap.SetSource(sri.Stream);
WriteableBitmap wb = new WriteableBitmap(bitmap);
// Encode WriteableBitmap object to a JPEG stream.
Extensions.SaveJpeg(wb, fileStream, wb.PixelWidth, wb.PixelHeight, 0, 100);
fileStream.Close();
fileStream.Dispose();
}
}
}
}