如何在winrt应用程序中压缩数据库文件?

时间:2014-05-01 07:02:05

标签: c# windows-8

我有一个sqlite数据库文件“test.db” 我想通过C#代码压缩这个文件 但是,当我尝试这样做时,我得到“访问被拒绝”的例外。

以下是我正在使用的代码:

byte[] buffer = WindowsRuntimeBufferExtensions.ToArray(await FileIO.ReadBufferAsync(fileToCompress));
ZipArchiveEntry entry = zipArchive.CreateEntry(fileToCompress.Name);
using (Stream entryStream = entry.Open())
{
    await entryStream.WriteAsync(buffer, 0, buffer.Length);
}

任何人都可以告诉我如何通过C#代码在winrt app中压缩数据库文件吗?

1 个答案:

答案 0 :(得分:0)

我离开了我的电脑,所以我不能尝试这个但是:

Windows RT应用程序无法从代码中访问Windows用户文件夹(视频,音乐,文档,下载,图片和USB设备)之外的系统中的文件。这只能通过使用文件选择器来实现(这样,用户负责文件选择)。

如果您尝试从代码中执行此操作,则会出现例外情况。

您是否尝试过在当前用户“Documents”文件夹中包含“test.db”文件的代码?

想到的另一个想法是检查数据库是否未打开并且已从DBA中分离出来。