Windows store app[Part 1]:读取U盘数据

Windows 8系统下开发App程序,对于.NET程序员来说,需要重新熟悉下类库。

关于WinRT,引用一张网上传的很多的结构图:

                     图1

针对App的开发,App工作在系统划定的安全沙箱内,所以通过Win32去调用U盘获取数据是不行了。下面来看下在WinRT下如何

读取U盘数据。

1.Win 8 store app项目打开Package.appxmanifest配置文件

2.选择Capabilities标签页,勾选Removalbe Storage,也可以在配置文件中的  <Capabilities>节点增加

<Capability Name="removableStorage" />

3.选择Declarations标签页,增加File Type Associations,File type增加.pdf(这个需要筛选的文件,根据扩展名随意添加),配置文件对应节点,如下:

1       <Extensions>
2         <Extension Category="windows.fileTypeAssociation">
3           <FileTypeAssociation Name="file">
4             <SupportedFileTypes>
5               <FileType>.pdf</FileType>
6             </SupportedFileTypes>
7           </FileTypeAssociation>
8         </Extension>
9       </Extensions>

 4.枚举设备信息

1             var devs = await DeviceInformation.FindAllAsync(DeviceClass.PortableStorageDevice);
2             foreach (var each in devs) {
3                 var removableStorage = StorageDevice.FromId(each.Id);
4 
5                 if (removableStorage != null) {
6                     GetFile(removableStorage);
7                 }
8             }

5.获取文件

1         async private void GetFile(StorageFolder removableStorage) {
2             var files = await removableStorage.GetFilesAsync();
3             foreach (var item in files) {
4                 data.Add(item.DisplayName);
5             }
6         }

代码:
  

原文地址:https://www.cnblogs.com/tmywu/p/3205828.html