博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
window 8 metro 访问Assets文件
阅读量:5033 次
发布时间:2019-06-12

本文共 1613 字,大约阅读时间需要 5 分钟。

 一般当你开始以XAML形式开发Windows 8 Metro App时,在你的工程里面可能会包含一些文件,例如用于显示的图片,数据和xml文件的读取。如下图,是我以Blank App模版创建的一个程序截图。

<ignore_js_op>1.png

 
 

 

今天我就来跟大家分享一下,如何访问Assets文件夹以及里面的文件。

更多内容请查看下面的帖子

Windows.Storage名称空间

我们首先需要认识一下Windows.Store名称空间。

    如果你去阅读微软MSDN上提供的文档你会发现里面有一个StorageFolder类,通过该类,我们可以操作文件夹和相关的内容。StorageFolder类有一个方法叫做StorageFolder.CreateFileAsync,这个方法会在当前文件夹中异步的创建一个文件。同时,你也会看到,这里有获取文件内容,读取文件属性等方法。

    在这里我会在Assets目录中添加一个XML文件1.xml,然后将其读取出来并显示在TextBox中。

    首先,我们需要获取Assets文件夹安装的路径。可以通过下面的代码获取。

 
1 StorageFolder InstallationFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;

    然后就是从Assets目录的文件1.xml中读取出数据。

 
1 string CountriesFile = @"Assets\1.xml";
2 StorageFolder InstallationFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
3 StorageFile file = await InstallationFolder.GetFileAsync(CountriesFile);
4 Stream Countries = await file.OpenStreamForReadAsync();

在这里我把文件内容转换为stream,并使用Linq XML从XML中读取数据。

下面我给出完成的代码片段:

 
01 public async void LoadCountriesXML()
02 {
03     string CountriesFile = @"Assets\1.xml";
04     StorageFolder InstallationFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
05     StorageFile file = await InstallationFolder.GetFileAsync(CountriesFile);
06     Stream Countries = await file.OpenStreamForReadAsync();
07  
08     XDocument xDOC = XDocument.Load(Countries);
09  
10     testXml.Text = xDOC.ToString();
11 }

这里需要特别注意的是asyncawait两个关键字,这两个是C#中新的关键字,在这里我们只需要知道在调用异步函数的时候需要使用到,后续的学习系列中我会对async和await进行详细的讲解。

下面我们就来看看程序运行的效果 第一个图是1.xml文件中的内容,第二个图是程序运行起来,显示出的xml内容。 <ignore_js_op>2.png

 
 

<ignore_js_op>3.png

 
 

这里我给出示例代码

游客,如果您要查看本帖隐藏内容请

转载于:https://www.cnblogs.com/czsl/archive/2012/12/01/2797384.html

你可能感兴趣的文章
http://lorempixel.com/ 可以快速产生假图
查看>>
Centos7下载和安装教程
查看>>
无谓的通宵加班之后的思索
查看>>
S1的小成果:MyKTV系统
查看>>
从setting文件导包
查看>>
编写一个函数isMerge,判断一个字符串str是否可以由其他两个字符串part1和part2“组合”而成...
查看>>
Github 开源:使用控制器操作 WinForm/WPF 控件( Sheng.Winform.Controls.Controller)
查看>>
PMD使用提醒
查看>>
Codeforces 887D Ratings and Reality Shows
查看>>
论文《A Generative Entity-Mention Model for Linking Entities with Knowledge Base》
查看>>
Linux记录-salt分析
查看>>
Android Studio默认快捷键
查看>>
函数式编程与参数
查看>>
SSAS使用MDX生成脱机的多维数据集CUB文件
查看>>
HDU 2191 【多重背包】
查看>>
51nod 1433 0和5【数论/九余定理】
查看>>
【AHOI2013复仇】从一道题来看DFS及其优化的一般步骤和数组分层问题【转】
查看>>
less 分页显示文件内容
查看>>
如何对数据按某列进行分层处理
查看>>
[Qt] this application failed to start because it could not find or load the Qt platform plugin
查看>>