我正在下载使用System.NET.FtpWebRequest使用GZip压缩的xml文件。
我收到的文件大小是服务器上文件的两倍,System.IO.Compression.GZipStream不喜欢它们。它返回以下错误消息:
System.IO.InvalidDataException :
The magic number in GZip header is not correct.
Make sure you are passing in a GZip stream.
GZip网站表明,将二进制文件下载为ASCII会导致许多问题。但是,我在FtpWebRequest上将UseBinary设置为true或false时遇到了同样的问题。
我的解压缩代码在使用FileZilla手动下载的文件上运行良好。
像往常一样,非常感谢您的帮助。
答案 0 :(得分:0)
我的坏。问题在于我如何将流保存到磁盘。根本不是FtpWebRequest或GZip的问题。将StreamWriter用于文本文件(我继承了该文件)。将FtpResponse流写入FileStream解决了我的问题。
感谢您的期待;抱歉浪费任何人的时间。