如何将 UWP StorageFile 转换为 .NET FileInfo?

2024-04-15

现在,UWP 支持 .NET Standard 2.0,它可以访问更多 System.IO 命名空间,包括Fileinfo https://msdn.microsoft.com/en-us/library/system.io.fileinfo(v=vs.110).aspx and 目录信息 https://msdn.microsoft.com/en-us/library/system.io.directoryinfo(v=vs.110).aspx.

如何转换 UWP存储文件 https://learn.microsoft.com/en-us/uwp/api/windows.storage.storagefile到文件信息?还有一个 StorageFolder 到 DirectoryInfo 吗?

尝试打开生成的 Fileinfo 时,天真的方法(获取 StorageItem 的完整路径并使用它构建 Fileinfo)失败,我真的很想摆脱使用PCL存储 https://github.com/dsplaisted/PCLStorage如果可能的话。


System.IO.File 和 System.IO.FileInfo 早已可供 UWP 应用使用。它们对于 .Net Standard 2.0 来说并不陌生

StorageFile 和 FileInfo 不执行相同的操作,并且通常不能互换。您没有说明您遇到的错误,但我的猜测是它是 AccessDenied,因为您的应用程序无法直接访问您尝试使用的路径。

默认情况下,应用程序只能直接访问其 ApplicationData 和 InstalledLocations。他们可以使用 System.IO 直接访问这些位置。要访问用户授予访问权限的其他位置(直接通过文件选择器、隐式地通过包功能等),应用程序需要通过 StorageFile 和 StorageFolder 类通过文件代理。

您可以从以下位置获取代理的 Win32 文件句柄存储句柄访问 https://msdn.microsoft.com/en-us/library/mt765063(v=vs.85).aspx并从中初始化 System.IO.File,但 FileInfo 不提供从 HANDLE 构造的方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 UWP StorageFile 转换为 .NET FileInfo? 的相关文章

随机推荐

  • 在 Javascript 中添加和减去字符串和数字 - 自动类型转换?

    让我们看一下下面的 JavaScript 代码 在第一个警报框中 显示 2 和 8 串联的结果 即28 然而 在第二个警报框中 它显示两个数字的减法 即6 How The 运算符超载 如果任何操作数是字符串 则执行字符串连接 如果有两个数字
  • Windows.h - 焦点进入文本输入时的通知

    我正在尝试提出一种解决方案 用于在焦点进入文本字段时设置通知 最终目标是通过屏幕键盘重新创建您在移动设备上看到的功能类型 到目前为止我一直在探索SetWinEventHook with EVENT OBJECT FOCUS and GetG
  • 实现领域驱动设计的函数式方法

    我在使用 C 编写领域驱动应用程序方面拥有丰富的经验 我编写的应用程序越多 我就越发现我想要采用一种不太适合标准 C OO 技术的方法 我想编写尽可能多的纯函数 因为它们真的很容易测试 我想以更具声明性的方式编写我的业务逻辑 所以我一直在研
  • Java/MSSQL:java.sql.SQLException 无效的对象名称“TableName”

    我正在尝试将 java 应用程序从旧服务器移动到新服务器 该应用程序在 Tomcat 上运行 使用 Microsoft SQL Server 作为后端数据库 并使用数据源 ODBC 中定义的系统 DSN 来决定连接到哪里 旧服务器使用Win
  • 调用 SWIG 生成的 JNI 时出现 UnsatisfiedLinkError?

    我正在尝试创建一个可从 Java 调用的 C 动态库 我在下面编译了一个DLLCygwin http www cygwin com using SWIG http www swig org Doc1 3 Java html compilin
  • Ember 路由、控制器、视图

    我已阅读 Ember js 网站上的大部分初学者指南 但我仍然对放置内容的正确位置感到困惑 Route 根据在线研究 人们建议将与路由相关的逻辑放入路由中 一切都很好 但我唯一能想到的是this transisionTo 我在其他地方读到所
  • Asp.net 超链接控件相当于

    我想在 asp net 中定义一个 HyperLink 控件 它生成类似于以下内容的 html 输出 a href a 如何才能做到这一点 我同意 SLAks 的观点 但你就这样吧
  • 苹果推送通知限制

    我想知道我们一次向用户发送的苹果推送通知的数量是否有限制 我可以使用 APNS 服务一次发送 100 000 个推送通知吗 如果您在短时间内向同一设备发送多个通知 推送服务将仅发送最后一个通知 https developer apple c
  • 如何使用第三方网络服务避免代码重复 - 不使用动态?

    我正在使用第三方网络服务 其所有方法都具有以下签名 SomeResponseClass SomeMethod SomeRequestClass request 每个方法都有自己的请求类和响应类 但是所有请求和所有响应都有一些共同点 每个请求
  • 是否有在导航栏添加相同的滚动菜单栏?

    我已经再次发布了我的这个问题 但我还没有得到完美的答案 在这里我将再次解释我的问题 这对我来说非常重要 所以不惜一切代价我必须解决它 现在我的问题是 假设我有 4 个tabbaritem in a tabbarController以及项目
  • COMPLETE pragma 不会阻止不完整模式警告

    我为类似列表的类制作了两个模式视图 infixr 5 lt pattern lt Stream s gt Token s gt s gt s pattern b lt bs lt uncons gt Just b bs where b lt
  • JSON从EJS到JS中的JSON对象

    我将 EJS 与 Node JS 结合使用 并向其中传递一个 JSON 对象 但需要将其作为页面中的可用对象进行访问 我从中收到意外的令牌 o 错误 var initData JSON parse 我不明白这里出了什么问题 这是渲染时文件中
  • 如何在 json 中的事件标题中添加换行符

    我无法弄清楚的一件事是能够添加 html 而不会被转义或实际创建新行 这是我的 json id 30 title Basics n Awesome Abs Butt Blast n Danielle B start 2010 05 11T0
  • 在服务器运行时使用tinytest测试Meteor客户端

    是否可以在服务器运行时使用tinytest测试Meteor客户端 这是我仅测试客户端的示例 Tinytest add Add object to a collection function test var people new Meteo
  • Apache 重写规则将所有请求重定向到包含另一个 .htaccess 的子目录和重写规则

    我的网络服务器上有公共和私人项目 我将所有公开内容放入网络服务器根目录中 并且我有一个private我只能从本地网络访问该文件夹 由其中的 htaccess 设置 我想简单地将每个私人项目放在private文件夹并自动处理请求 但希望 UR
  • 检查字符串列表是否可以链接

    Question 实现一个功能bool chainable vector
  • 如何在Android移动网站中强制使用数字键盘

    我有一个移动网站 它有一些 HTMLinput其中的元素 如下所示
  • CMake:如何标准化路径? [复制]

    这个问题在这里已经有答案了 是否有一种可靠的方法来标准化 CMake 中的路径 例子 Let s assume that an environment variable MY ROOT DIR is set that points to s
  • Windows Phone 8 上“无法安装公司应用程序”

    我为 Windows Phone 8 开发了一个公司应用程序 并完成了所有建议的步骤来设置它进行安装 我拥有 Symantec 代码签名证书 并且已生成应用程序注册令牌和签名的 XAP 并将其托管在 OneDrive 上的公共文件夹中 我使
  • 如何将 UWP StorageFile 转换为 .NET FileInfo?

    现在 UWP 支持 NET Standard 2 0 它可以访问更多 System IO 命名空间 包括Fileinfo https msdn microsoft com en us library system io fileinfo v