繁体   English   中英

如何在没有System.UnauthorizedAccessException的情况下将文件从应用程序捆绑包复制到另一个目录?

[英]How to copy a file from the app bundle to another directory without System.UnauthorizedAccessException?

我尝试将应用程序捆绑包中包含的文件作为资源复制到iPhone上的temp文件夹中。 虽然这可以在模拟器上运行,但在设备上却出现异常:

System.UnauthorizedAccessException:拒绝访问路径“ /private/var/mobile/Applications/B763C127-9882-4F76-8860-204AFEA8DD68/Client_iOS.app/testbundle.zip”。

我在下面使用的代码无法打开源文件。

using(var sourceStream = File.Open("./demobundle.zip", FileMode.Open))
{
    sourceStream.CopyTo(targetStream);
}   

将文件复制到目标流的正确方法是什么?

为什么我在这里问完之后几乎总是立即找到问题的答案? :-)

必须指定文件访问模式。 如果将其设置为Read ,它将起作用。 默认似乎是某些写入模式,这显然是不可能的。

using(var sourceStream = File.Open("./demobundle.zip", FileMode.Open, FileAccess.Read))
{
    sourceStream.CopyTo(targetStream);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM