我需要在服务器的HttpWebRequest中压缩文件以进行发送。我尝试使用C#的外部类,但在Universal Apps中不起作用。我尝试使用可以在Universal应用程序中使用的原始类,这是我的代码:
//SycroZipFile and UploadFile are StorageFile type.
using (Stream writeStream = await SyncroZipFile.OpenStreamForWriteAsync())
{
using (Stream readStream = await UploadFile.OpenStreamForReadAsync())
{
await readStream.CopyToAsync(writeStream);
}
}
但ZipFile已损坏并且无法正常工作,任何人都可以帮助我在Windows Phone Universal Apps中压缩文件?非常感谢,对不起我的英语,并提前致谢!
答案 0 :(得分:0)
最后我可以解决我的问题!如果您是Windows Phone的程序员,则通用应用程序会遇到外部类来压缩文件的问题,您可以将我的代码用于Visual中可用于Universal Apps的原始类:
//The UploadFile and SyncroZipFile are StorageFile's.
using (Stream StreamToUploadFile = await UploadFile.OpenStreamForWriteAsync())
{
using (Stream StreamToSyncroZipFile = await SyncroZipFile.OpenStreamForWriteAsync())
{
using (ZipArchive UploadFileCompressed = new ZipArchive(StreamToSyncroZipFile, ZipArchiveMode.Update))
{
ZipArchiveEntry NewZipEntry = UploadFileCompressed.CreateEntry(UploadFileName);
using (Stream SWriter = NewZipEntry.Open())
{
await StreamToUploadFile.CopyToAsync(SWriter);
}
}
}
}
这段代码非常适合我,最后我的ZipArchive没有腐败,我可以打开它!祝你好运!