Windows Phone 8 文件操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/coaxhappy/article/details/8824565

在Windows Phone 8 中,操作文件的方式限制很大,对独立存储中的文件访问,可以采取两种形式:

1、IsolatedStorageFile file = IsolatedStorageFile .GetUserStoreForApplication();

2、StorageFolder folder = Windows.Storage.ApplicationData .Current.LocalFolder;

     IReadOnlyList<StorageFile > files = await folder.GetFilesAsync();

两者取到的文件夹路径是一致的,都是 "C:\Data\Users\DefApps\AppData\{7315D4B4-02D4-452C-A618-08281E0192F1}\Local",大括号括起来的部分是根据应用程序变化而变化的,是应用程序的ProductID

如下图:

3、IsolatedStorageFile file = IsolatedStorageFile .GetUserStoreForApplication();

     file.CreateDirectory("ddd");

     file.CreateFile("ddd\\ds");

     file.CreateFile("sss");

这段代码在Local文件夹下创建了一个ddd文件夹和sss一个文件,在ddd文件夹下面创建了一个ds文件。

当使用

     string[] files = file.GetFileNames();

获取独立存储文件下面的文件时,只能获取到当前文件夹下面的文件,对于子文件夹的文件,无法获取到,只能通过遍历子文件夹来获取子文件夹下面的 文件。

对于file.GetDirectoryNames(),可以获取到一个“Shared”文件夹,这个文件夹的作用我还不知道- -!

4、SD卡

     ExternalStorageDevice externalStorageDevice = sdCards.FirstOrDefault();

     //ExternalStorageFolder sdFolder = await externalStorageDevice.GetFolderAsync("d:\\data1");

     ExternalStorageFolder rootFolder = externalStorageDevice.RootFolder;

     IEnumerable<ExternalStorageFolder> subFolders = await rootFolder.GetFoldersAsync();

以上代码结果参照下图:

可以发现SD卡的默认盘符为:“D:\\”。

获取到的subFolders:只有自己创建的文件夹,对于系统文件夹:WPSystem、Music、Pictures、Videos等,均无法获取到

参照下图:

可以看到在Windows Phone Runtime中,只有LocalFolder被实现。

LocalFolder的所有成员如下图:

猜你喜欢

转载自blog.csdn.net/coaxhappy/article/details/8824565
今日推荐