UWP 中的各种文件路径(用户、缓存、漫游、安装……)

简介: 原文 UWP 中的各种文件路径(用户、缓存、漫游、安装……) UWP 提供了多种不同文件路径访问方式,对应到不同的文件路径中。可能我们只是简单用 ApplicationData.Current 获取一下可以读写的路径便能应付我们应用日常所需的各种文件读写需求,不过,UWP 还提供了更多的路径选项。

原文 UWP 中的各种文件路径(用户、缓存、漫游、安装……)

UWP 提供了多种不同文件路径访问方式,对应到不同的文件路径中。可能我们只是简单用 ApplicationData.Current 获取一下可以读写的路径便能应付我们应用日常所需的各种文件读写需求,不过,UWP 还提供了更多的路径选项。

本文将和你一起总结 UWP 中的各种各样的路径。


UWP 中的路径种类

UWP 中可访问的路径有这些:

ApplicationData

ApplicationData 提供应用程序自己创建的数据的读写能力。它包含这些文件夹:

  • Local: 储存在设备上,可被云端备份,在更新之后此数据保留
  • LocalCache: 储存在当前设备上,不备份,在更新后此数据保留
  • SharedLocal: 储存在设备上,为所有用户共享
  • Roaming: 对于同一个用户,会存在于安装了此应用的所用设备中
  • Temporary: 允许操作系统在任何时刻删除的临时文件

在智能感知提示的帮助下,你也可以找到对应的这几个文件夹:

ApplicationData 的智能感知提示
▲ ApplicationData 的智能感知提示

这些不同的文件夹有着不同建议的用途。Local 文件夹,用来储存用户产生的数据(例如用户创建的文档等);这部分数据在进行备份的时候会被备份下来。相比之下,LocalCache 和 Temporary 是不受备份影响的。

额外的,

Package.InstalledLocation

应用程序可以访问安装后程序包所在的路径,使用 Package.Current.InstalledLocation 即可获取到应用程序包所在路径。

当然,这部分的路径有更多的快捷访问方式,比如 Uri 以 / 开头,就是访问程序包所在路径:

var uri = new Windows.Foundation.Uri("/samples/logo.png"); 

还可以以 ms-appx:/// 协议开头:

var uri = new Windows.Foundation.Uri("ms-appx:///samples/logo.png"); var file = Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(uri); 

特殊文件夹

特殊文件夹可以通过 KnownFolders 类型获取,可以获取到照片、图片、音乐、视频等文件夹。

本文会经常更新,请阅读原文: https://walterlv.com/post/all-kinds-of-paths-in-uwp.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

目录
相关文章
|
域名解析 缓存 监控
ubuntu20.04上安装dnsmasq服务及dns缓存配置
ubuntu20.04 安装dnsmasq服务, 缓存dns,加快网络地址解析
1749 0
|
5月前
|
存储 缓存 NoSQL
分布式系列教程(02) -分布式Redis缓存(简介&安装&基础)
分布式系列教程(02) -分布式Redis缓存(简介&安装&基础)
105 0
|
缓存 资源调度
修改yarn的默认安装和缓存位置
修改yarn的默认安装和缓存位置
401 0
|
存储 缓存 NoSQL
分布式缓存中间件-Redis介绍与安装
分布式缓存中间件-Redis介绍与安装
280 1
分布式缓存中间件-Redis介绍与安装
|
存储 缓存 负载均衡
nosql缓存技术之memcached介绍、安装以及使用总结(1)
nosql缓存技术之memcached介绍、安装以及使用总结
211 0
nosql缓存技术之memcached介绍、安装以及使用总结(1)
|
缓存 NoSQL 关系型数据库
DOCKER03_快速安装docker、数据库mysql、缓存redis(二)
③. 数据库mysql5.7安装 ④. 缓存redis安装
202 0
DOCKER03_快速安装docker、数据库mysql、缓存redis(二)
|
缓存 NoSQL 关系型数据库
DOCKER03_快速安装docker、数据库mysql、缓存redis(一)
①. 快速安装docker ②. 阿里云镜像加速
122 0
DOCKER03_快速安装docker、数据库mysql、缓存redis(一)
|
存储 缓存 Python
Python 技术篇-pip安装的python库缓存位置查看方法,如何查看python库源码
Python 技术篇-pip安装的python库缓存位置查看方法,如何查看python库源码
449 0
Python 技术篇-pip安装的python库缓存位置查看方法,如何查看python库源码