Jam*_*een 3 caching windows-phone-7
在Windows Phone 7中,如何将BitmapImage保存到本地存储?如果在接下来的几天内再次请求,我需要保存图像以进行缓存和重新加载.
如果将文件保存到IsolatedStorage,则可以设置相对路径以从那里查看它.
这是一个快速示例,将XAP(作为资源)中包含的文件保存到隔离存储中.
using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication())
{
if (!isoStore.FileExists(fileName)
{
var sr = Application.GetResourceStream(new Uri(fileName, UriKind.Relative));
using (var br = new BinaryReader(sr.Stream))
{
byte[] data = br.ReadBytes((int)sr.Stream.Length);
string strBaseDir = string.Empty;
const string DelimStr = "/";
char[] delimiter = DelimStr.ToCharArray();
string[] dirsPath = fileName.Split(delimiter);
// Recreate the directory structure
for (int i = 0; i < dirsPath.Length - 1; i++)
{
strBaseDir = Path.Combine(strBaseDir, dirsPath[i]);
isoStore.CreateDirectory(strBaseDir);
}
using (BinaryWriter bw = new BinaryWriter(isoStore.CreateFile(fileName)))
{
bw.Write(data);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可能还对Ben Gracewood和Peter Nowaks创建的图像缓存转换器感兴趣.它们都将保存图像显示在隔离存储中并从那里加载它们.
归档时间: |
|
查看次数: |
4003 次 |
最近记录: |