介绍:
提供一个磁盘存储空间,他是一种虚拟的文件系统,能存储小量的数据;在默认的情况下,它只能存储1MB的文件。根据使用方式及功能的不同,独立存储空间又包含两部分:独立设置存储和独立文件存储。除非卸载应用,否则数据不会消失。
第一是通过库中的键/值对,叫做IsolatedStorageSettings(独立设置存储),第二是通过创建真实的文件和目录,叫做IsolatedStorageFile(独立文件存储)。
独立设置存储:
命名空间为:System.IO.IsolatedStorage;主要涉及System.IO.IsolatedStorage.IsolatedStorageSettings类。
常用操作:
//创建操作独立设置存储必须的IsolatedStorageSettings类的对象 IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings; //增 settings.Add(key,value); //删 settings.Remove("kk"); //改 settings["kk"] = value; //查 string kk = (string)settings["kk"]; //判断该键是否存在 settings.Contains("kk"); //清除 settings.Clear(); //最终都需要保存 settings.Save();
独立文件存储:
命名空间为:System.IO.IsolatedStorage;主要涉及System.IO.IsolatedStorage.IsolatedStorageFile类。实际上,IsolatedStorage.IsolatedStorageFile类是 FileStream类 的一个子类。
CreateDirectory() 创建一个新的独立存储文件夹
DeleteDirectory() 删除独立存储文件夹
CreateFile() 创建文件
DeleteFile() 删除文件
GetFileNames() 得到文件名称集合
GetDirectoryName() 得到文件夹名称集合
OpenFile() 打开文件
Remove() 移除所有的文件和文件夹
常用操作:
... using System.IO.IsolatedStorage; using System.IO; namespace PhoneApp19 { public partial class MainPage : PhoneApplicationPage { //为程序获取一个虚拟的本地存储 IsolatedStorageFile storageFile = IsolatedStorageFile.GetUserStoreForApplication(); // 构造函数 public MainPage() { InitializeComponent(); } //写入数据 private void btnWrite_Click(object sender, RoutedEventArgs e) { string filePath = txbFilePath.Text.Trim(); string fileName = txbFileName.Text.Trim(); string fullFileName = System.IO.Path.Combine(filePath,fileName); string content = txbContent.Text; //判断文件夹是否存在,若不存在则创建 if (!storageFile.DirectoryExists(filePath)) { storageFile.CreateDirectory(filePath); } //写入 using (StreamWriter writer = new StreamWriter(storageFile.OpenFile(fullFileName, FileMode.Append))) { writer.WriteLine(content); } } //读取数据 private void btnRead_Click(object sender, RoutedEventArgs e) { string fullFilePath = txbFullFilePath.Text.Trim(); //判断文件是否存在 if (!storageFile.FileExists(fullFilePath)) { txbReadContent.Text = "指定文件不存在"; return; } //读取 using (StreamReader reader = new StreamReader(storageFile.OpenFile(fullFilePath, FileMode.Open))) { txbReadContent.Text = reader.ReadToEnd(); } } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述