0

我需要创建一个 WCF 方法,它接受包含多个 pdf 文件的 zip 文件的字节数组,并从输入字节创建 Zip 文件并将其保存在我的应用程序的任何文件夹中。

我正在使用 WCf 应用程序。

谁能帮我 ...

谢谢

4

2 回答 2

1

我建议如下:

  1. 将文件作为StreamWCF 方法而不是作为字节数组传递。有关详细信息,请参阅大数据和流式传输
  2. 您可能不需要将解压缩的文件保存在光盘上即可提取它。可以看看你使用的解压库的API吗?可能它可以直接从Stream. 例如SharpZipLib可以。
于 2012-12-02T18:14:28.233 回答
0

你真的想在这里做什么?你写你想从服务中获取一个 Zip 文件并将其保存到磁盘(基本上:通过 wcf 服务获取一个文件)。可能您想要的是 zipfile 的内容?

为此,您需要一个库来处理 zip 文件,我建议DotNetZip。据我所知,DotNetZip 可以从文件和流以及字节数组中加载。如果没有,您可以从字节数组创建一个流并将其传递到 zip 库中。

Stream stream = new MemoryStream(byteArray);

对于解压和其他操作,请阅读您选择的任何 zip 库的手册。

如果您真的只想从字节数组中保存文件:

File.WriteAllBytes(string path, byte[] byteArray);

无论哪种方式,正如@Alexander Stepaniuk 建议的那样,您最好在服务中使用流,而不是传递字节数组,阅读他的帖子和链接。

于 2012-12-02T18:42:29.733 回答