Silverlight Isolated Storage 独立存储
Silverlight 独立存储 好比Cookie一样,可以在客户端存储信息,但是他更加强大,独立存储提供了客户端指定目录下的读写权限,可以任意的向其中添加删除修改读取文件。
独立存储将文件存储在系统盘-当前用户-本地的-指定文件夹当中。
独立存储有两个作用域 应用程序级别和站点级别 他就像是一个为Silverlight专门提供的文件夹,用来存放Silverlight的文件信息,比如XML、TXT、Dat、Html等,格式不限只要对你有用。
#
基础操作语法
using System.IO.IsolatedStorage;
using System.IO;
void CreateDir(string dirName)
{
IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication();
storeFile.CreateDirectory(dirName);
}
void SaveFile(string savePath, string content)
{
IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream sf = storeFile.CreateFile(savePath);
using (StreamWriter sw = new StreamWriter(sf))
{
sw.WriteLine(content);
}
sf.Close();
}
void LoadFile(string readPath)
{
string content = string.Empty;
using (IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication())
{
if (storeFile.FileExists(readPath))
{
StreamReader sr =
new StreamReader(storeFile.OpenFile
(readPath, FileMode.Open, FileAccess.Read));
content = sr.ReadToEnd();
}
}
}
void DeleteFile(string path)
{
using (IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication())
{
storeFile.DeleteFile(path);
}
}
void DeleteDir(string dirPath)
{
using (IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication())
{
storeFile.DeleteDirectory(dirPath);
}
}
void LoadDirs()
{
using (IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication())
{
var itemSource = storeFile.GetDirectoryNames("*");
}
}
名值对方式存储读取
这种方式就很像Cookie了
string ReadSettings(string key)
{
IsolatedStorageSettings settings =
IsolatedStorageSettings.ApplicationSettings;
return settings[key].ToString();
}
void SaveSettings(string key, string value)
{
IsolatedStorageSettings settings =
IsolatedStorageSettings.ApplicationSettings;
settings.Add(key, value);
settings.Save();
}
void ClearSettings()
{
IsolatedStorageSettings settings =
IsolatedStorageSettings.ApplicationSettings;
settings.Clear();
}
独立存储的文件与名值对分别有两个示例,可以在目录地址链接下载代码阅读。
独立存储的空间大小
独立存储默认的空间上限是1M,可以通过代码设置让这个上限加大。代码如下
//使1用?应|用?程ì序ò存?储¢创′建¨对?象ó
using (IsolatedStorageFile storeFile =
IsolatedStorageFile.GetUserStoreForApplication())
{
//获?取?旧é空?间?大ó小?
long oldSize = storeFile.AvailableFreeSpace;
//定¨义?新?增?空?间?大ó小?
long newSize = 2097152;
if (oldSize < newSize)
{
//分?配?新?的?存?储¢空?间?
storeFile.IncreaseQuotaTo(newSize);
}
}
客户可以通过邮件Silverlight 控件选择Silverlight配置中 ->应用程序存储选项卡 中查看本地有存储了那些Silverlight应用存储信息。
还没有评论,来说两句吧...