Windows Phone 隔离存储空间及文件操作

Windows Phone 7的隔离存储空间

  1. 1. 概念:

Windows Phone 7中所有的文件IO操作被限制在隔离存储空间里面,在隔离存储空间里面可以增加,删除和修改目录文件,在隔离存储空间里面可以存储程序的配置信息,但是每个应用程序的隔离存储空间都是独立的,相当于Windows Phone 的一块内存被单独划出来了,只有这一块的内部(应用程序本身)才可以访问其内部的信息,而外部(其他的应用程序)无法访问。

        2. 目录操作

两个重要的类:

IsolatedStorageFile:用于操作隔离存储空间里面的目录以及文件,例如增,删,改,查等。

IsolatedStorageFileStream:用于读写操控隔离存储空间里面的文件流,例如当我们需要往某个文件写入东西的时候便会使用到这个类。

IsolatedStorageSettings:用于存储程序的配置信息的Dictionary,例如应用程序的一些Key和Value等。

        3. 使用隔离存储空间需要引用两个命名空间:

    using System.IO.IsolatedStorage;   
	using System.IO;

对隔离存储空间的操作和传统的文件IO操作类似。

在隔离存储空间里里面没有绝对路径或则说没有根目录,通常来说例如在我们的Windows 电脑上,一个文件夹它的根目录在C盘或则D盘或则E盘等等,但是在Windows Phone 7中则没有根目录,因此也就没有绝对路径。所以我们要取得应用程序的隔离存储空间不能通过路径来获得,只能通过GetUserStoreForApplication()方法来获得。

示例演示:

    using System.IO.IsolatedStorage;   
	using System.IO;   
        private const string FolderName = "temp1";//定义一个常量,必须在此初始化   
        private void newbutton_Click(object sender, RoutedEventArgs e)   
        {   
           using (IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication())   
          //使用using表示这个类使用完之后可以自动的释放资源,即调用Dispose()方法。   
	  //获得应用程序的隔离存储空间   
            {    
            file.CreateDirectory(FolderName);//新建一个文件夹   
            MessageBox.Show("新建成功!");   
            }   
        }   
        
        private void Checkbutton_Click(object sender, RoutedEventArgs e)   
        {   
            using (IsolatedStorageFile file=IsolatedStorageFile.GetUserStoreForApplication())   
            {   
            if(file.DirectoryExists(FolderName))//目录存在   
            {   
            MessageBox.Show(FolderName+"已经存在!");   
            }   
            else
            {   
            MessageBox.Show(FolderName+"不存在!");   
            }   
          }   
        }   
        
        private void Deletebutton_Click(object sender, RoutedEventArgs e)   
        {   
            using (IsolatedStorageFile file=IsolatedStorageFile.GetUserStoreForApplication())   
            {   
            if(file.DirectoryExists(FolderName))   
            {   
               file.DeleteDirectory(FolderName);//删除目录   
               MessageBox.Show(FolderName + "文件已删除");   
            }   
            else
            {   
            MessageBox.Show("没有可删除的文件");   
            }   
           }   
        }



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值