Metro中文件夹和文件的创建
本文主要介绍两种文件的创建,分别是使用:
ApplicationData.Current.RoamingFolder和KnownFolders.DocumentsLibrary中提供的。
使用之前,需要引用命名空间 using Windows.Storage;
1.ApplicationData.Current.RoamingFolder(ApplicationData.Current.LocalFolder和这个原理相同,只是保存的地方不一样和用途不一样)
该类只要是把文件及文件夹保存到当前登录用户的目录下:
C:\Users\admin\AppData\Local\Packages\ebd9cb04-acea-4018-a622-89e102879f03_kwmcxzszfer2y\RoamingState\
红色部分的文件夹名称,不同的应用程序不一样,可以不用关心。
StorageFolder folder = ApplicationData.Current.RoamingFolder; //获得当前应用程序的存储路径C:\Users\admin\AppData\Local\Packages\ebd9cb04-acea-4018-a622-89e102879f03_kwmcxzszfer2y\RoamingState\
StorageFolder tempFolder =await folder.CreateFolderAsync("XML",CreationCollisionOption.OpenIfExists); //在上面的路径下面创建一个XML的文件夹
StorageFile file = await tempFolder.CreateFileAsync("test.xml", CreationCollisionOption.OpenIfExists); //在XML文件夹下创建一个test.xml的文件。
注:ApplicationData.Current.LocalFolder原理一样,只是保存在C:\Users\admin\AppData\Local\Packages\ebd9cb04-acea-4018-a622-89e102879f03_kwmcxzszfer2y\LocalState\的文件夹下面。
2. KnownFolders.DocumentsLibrary
这种方法比较麻烦一些,需要设置点东西。
我们的程序需要文档库的权限,所以我们要更改Package.appxmanifest,如图:
然后在声明的选项卡中进行设置,你要读写的文件类型:
先在左边的可用声明中点击添加,然后在右边的的输入栏中填入名称和文件类型就OK 了。
接下来,我们就在后台写入我创建文件的代码:
StorageFolder folder = KnownFolders.DocumentsLibrary; //获得保存文件的路径,默认路径为我的文档根目录C:\Users\admin\Documents
StorageFolder tempFolder =await folder.CreateFolderAsync("XML",CreationCollisionOption.OpenIfExists); //在上面的路径下面创建一个XML的文件夹C:\Users\admin\Documents\XML
StorageFile file = await tempFolder.CreateFileAsync("test.xml", CreationCollisionOption.OpenIfExists); //在XML文件夹下创建一个test.xml的文件。
这样就完成了文件和文件夹的创建。
另外还有一种就是在项目中创建,在应用程序的安装路径下创建, 使用Package.Current.InstalledLocation;我试了试,只可以读取,不能创建文件和文件夹,它的提示是访问权限不足。,目前我还不是很会,有哪位大神可以帮我指点指点。
谢谢!!!