c# - 如何在UWP中解压文件

标签 c# zip uwp

我正在尝试解压缩文件,但我总是有

Access to the path 'C:\Users\Kosov Denis\Downloads\12.epub' is denied.

我穿了什么?

await Task.Run(() =>
            {
                ZipFile.ExtractToDirectory(file.Path,
                    ApplicationData.Current.LocalCacheFolder.Path +
                    string.Format(@"\{0}", file.Name.Replace(file.FileType, "")));
            });

最佳答案

我也遇到过和你一样的问题,我google了半天发现UWP好像不能直接通过路径访问文件,如果要访问本地文件,需要使用文件拾取,见: hele . 我用曲线来解决这个问题:

StorageFolder folder;
folder = ApplicationData.Current.LocalFolder;

//Open the file picker
var _openFile = new FileOpenPicker();
_openFile.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;
_openFile.ViewMode = PickerViewMode.List;
_openFile.FileTypeFilter.Add(".zip");
StorageFile file = await _openFile.PickSingleFileAsync();

//Read the file stream
Stream a = await file.OpenStreamForReadAsync();

//unzip
ZipArchive archive = new ZipArchive(a);
archive.ExtractToDirectory(folder.Path);

ZipArchive Class

关于c# - 如何在UWP中解压文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38090269/

相关文章:

c# - Xamarin.iOS 应用程序在事件时不接收 parse.com PUSH

c# - 在特定情况下将 bytearray 转换为字符串

c# - 使用指定为 "utf-16"的编码解析 xml 时出现 XmlException

python - 创建内存中 zip 文件并作为 http 响应返回的函数

c# - 图标 zip 无法将文件保存在目标路径中

c# - Visual Studio C# 共享项目中的静态文件(JS、CSS 等)

java - 为什么我的 java.util.zip 函数显示不一致的行为?

c++ - wofstream 只创建一个空文件 C++

unity3d - 在 UWP 的 Unity 插件中使用 DirectX11 的硬件加速 H264 解码

c# - 获取 CPU、RAM 和 GPU 信息 - UWP App