Загруженные файлы в AppData\Local\ Автоматическое удаление пакетов в UWP
Таким образом я загружаю некоторые файлы.zip в свое приложение UWP.
var rootFolder = await ApplicationData.Current.LocalFolder.CreateFolderAsync("attachment", CreationCollisionOption.OpenIfExists );
FileInfo fInfo;
this.infoFiles.TryTake(out fInfo);
StorageFile coverpic = await rootFolder.CreateFileAsync(fInfo.FileName, CreationCollisionOption.ReplaceExisting);
try
{
System.Net.Http.HttpClient client = new System.Net.Http.HttpClient();
Uri URI = new Uri(fInfo.Url);
byte[] buffer = await client.GetByteArrayAsync(URI); // Download file
using (Stream stream = await coverpic.OpenStreamForWriteAsync())
stream.Write(buffer, 0, buffer.Length); // Save
StorageFile zipFile = await MyFileHelper.GetFileAsync(rootFolder, fInfo.FileName);
if (fInfo.FileName.ToLower().Contains(".zip"))
{
await UnZipFileAsync(zipFile, rootFolder).ConfigureAwait(false);
if (Instance.DownloadedNotification != null)
{
Instance.DownloadedNotification(fInfo.FileName);
}
if (await rootFolder.TryGetItemAsync("5301.zip") != null)
{
Debug.WriteLine("Soon after Download and Unzip finished 5301.zip exists");
}
else
{
Debug.WriteLine("Soon after Download and Unzip finished 5301.zip doesn't exists");
}
}
else
{
if (Instance.DownloadedNotification != null)
{
Instance.DownloadedNotification(fInfo.FileName);
}
if (await rootFolder.TryGetItemAsync("5301.zip") != null)
{
Debug.WriteLine("Soon after Download and Unzip finished and file name doesn't contain \"zipFile\" 5301.zip exists");
}
else
{
Debug.WriteLine("Soon after Download and Unzip finished and file name doesn't contain \"zipFile\" 5301.zip doesn't exists");
}
}
// return coverpic;
}
catch (Exception e)
{
Debug.WriteLine("Exception Occured--" + e.Message);
}
Я загружаю более 30 файлов асинхронно. Я загружаю 1 файл и сохраняю его. Затем распакуйте его (на самом деле я читаю содержимое файла.zip, не распаковывая его. Затем скопируйте содержащийся файл в корневую папку). После успешного копирования я загружаю второй.zip файл.
Моя проблема в то время как этот цикл идет, некоторые уже загруженные файлы отсутствуют в корневой папке (ZIP-файл и файл распаковки оба отсутствуют в корневой папке). В качестве примера, скажем, файл 5301.zip, загруженный и распакованный в качестве первого файла. Если программа загружает 10-й файл (5310.zip), этот файл 5301.zip и разархивированный файл отсутствуют. Мои файлы загружаются в
C:\Users\ MyUser\AppData\Local\Packages\de187d8d-мое-приложение-ID-2b3b8a255c7b_tqgs61w0frgtm\LocalState\ вложение
Почему это происходит? Пожалуйста, помогите мне решить эту проблему. Спасибо!
1 ответ
Если вы используете плагин cordova-file-transfer, компилируя для Windows 22h2, проверьте, есть ли в вашей Windows зашифрованный диск, в этом была проблема, потому что загрузка была произведена, а затем исчезла из-за шифрования.