已离职的同事,用C#写的客户端程序,功能是导入固定格式的压缩包或者Excel文件,对应显示数据,验证通过后,导出来成zip包。可以再次将导出的zip包导入进去,显示同样的数据,目前问题是,将通过验证导出的数据包再次导入时,弹出框提示错误,代码里,捕获了异常,弹出了异常信息:Size mismatch:4294967295;115<->88;115。在ICSharpCode.SharpZipLib.ZipInputStream.BodyRead(Byte[] buffer,Int32 offset,Int32 count).在ICSharpCode.SharpZipLib.ZipInputStream.Read(Byte[] buffer,Int32 offset,Int32 count).在DBABDI.BGProcessor.DIZipDataImporter.parseDIZipData(String fpath)位置:d:/DNABDI/BGProcessor/DIZipDdataImporter.cs:行号61
我的代码61行显示: size = zis.Read(data, 0, data.Length);
运行后,通过这个程序打出来的包,再次导入,就会报错了。谁知道是什么原因。我的引用里有这个,ICSharpCode.SharpZipLib.dll。
代码应该是没有问题。
弄一周了,搞不出来。谁帮帮我,谢谢!
第二次导入的zip文件不完整或者损坏,具体你需要dump下这个文件,用二进制编辑器打开看看