`

ZIP操作

    博客分类:
  • JAVA
 
阅读更多
public String  prefixZip(Object obj) throws FrameException {
        String str = "";
        PrintWriter dataos = null;
        String strPath = ServerInfo.getDownloadPath();
        try
        {
            File file = null;
            file = new File(strPath);
            file.mkdirs();
            Date dd = new Date();
            long strD = dd.getTime();
            // rvo.setretVO(PREFIXFILE + String.valueOf(strD)+".zip");
            //创建文件名
            str = PREFIXFILE + String.valueOf(strD) + ".zip";
            StringBuffer strFullPath = new StringBuffer(strPath);
            strFullPath.append(System.getProperty("file.separator"));
            strFullPath.append(PREFIXFILE);
            strFullPath.append(String.valueOf(strD));
            strFullPath.append(".zip");
            file = new File(strFullPath.toString());
           
            TraceService.debug(LogConstants.DEPLOY,"获取压缩路径:" + strFullPath.toString());
           
            //读取文件
            ZipOutputStream zipos = new ZipOutputStream(new FileOutputStream(file));
            zipos.setMethod(ZipOutputStream.DEFLATED);
            zipos.putNextEntry(new ZipEntry("prefix.txt"));
            dataos = new PrintWriter(zipos);
           
            //开始处理Object,对object进行解析
            if (obj instanceof MiscPrefixVO)
            {
                TraceService.debug(LogConstants.DEPLOY, "压缩对象为MiscPrefixVO");
                dataos.print( sysCodeString(((MiscPrefixVO) obj).toString()));
            }
            else if (obj instanceof ArrayList)
            {
                int lLen = ( (ArrayList) obj).size();
                TraceService.debug(LogConstants.DEPLOY,"压缩对象为ArrayList ,长度为" + lLen);
                for (int i = 0; i < lLen; i++)
                {
                    MiscPrefixVO mVO = (MiscPrefixVO) ( (ArrayList) obj).get(i);
                    dataos.print(sysCodeString(mVO.toString()));
                    dataos.flush();
                }
            }
            dataos.close();
            dataos = null;
        }
        catch (FileNotFoundException fne) {
            if (dataos != null) {
                try {
                    dataos.close();
                }
                catch (Exception e) {
                }
                dataos = null;
            }
            throw new FrameException(OAMErrorCodeConst._EC_PREFIX_ZIP_FAIL,
                                     "压缩文件错误!" + fne.toString());
        }
        catch (IOException ioe) {
            if (dataos != null) {
                try {
                    dataos.close();
                }
                catch (Exception e) {
                }
                dataos = null;
            }
            throw new FrameException(OAMErrorCodeConst._EC_PREFIX_ZIP_FAIL,
                                     "生成压缩文件失败!" + ioe.toString());
        }
        return str;
    }
分享到:
评论

相关推荐

    ZIP操作支持库

    ZIP操作支持库是一种用于处理ZIP文件格式的软件库,它为开发者提供了在各种编程语言中创建、读取、修改和管理ZIP档案的功能。ZIP是一种广泛使用的文件归档格式,能够将多个文件和目录打包成一个单一的文件,方便存储...

    vc6 ZIP 操作模块

    7. `zip`:可能是一个库文件或者包含了库函数的头文件,用于实际的ZIP操作。 要使用这个模块,首先需要在VC6.0环境中打开`Ziptest1.dsw`项目文件,然后编译和运行`Ziptest1.cpp`。通过调试和分析代码,可以学习如何...

    C# zip操作类

    该cs文件包含两个类ZipClass和UnZipClass。ZipClass实现了对文件夹、文件集和单个文件的压缩。UnZipClass实现了对压缩文件的解压

    java zip操作

    java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩

    zip处理类模块

    7. **API封装**:将复杂的API调用包装成易语言的类方法,使得使用者无需关心底层实现,只需调用简洁的接口就能完成ZIP操作。 8. **接口设计**:类模块的接口设计直接影响其易用性。合理的命名、参数设置、返回值...

    Zip操作 -- 基于DotNetZip的封装

    Zip操作 -- 基于DotNetZip的封装

    nginx离线安装教程及依赖包.zip 操作因为工作网络的特殊性,服务器是不连互联网的

    nginx离线安装教程及依赖包.zip 操作因为工作网络的特殊性,服务器是不连互联网的,所以整个安装过程都是采用离线包安装的方式来安装。____一般我们都需要先装pcre,zlib,前者用于url rewrite,后者用于gzip压缩,...

    操作系统实验代码软件工程操作系统实验课内容.zip

    操作系统实验代码软件工程操作系统实验课内容.zip操作系统实验代码软件工程操作系统实验课内容.zip操作系统实验代码软件工程操作系统实验课内容.zip操作系统实验代码软件工程操作系统实验课内容.zip操作系统实验代码...

    java 操作Zip文件(压缩、解压、加密).zip

    这两个库各有优势,`zip4j`更专注于Zip操作,提供更丰富的API和加密功能,而`Apache Ant`则在构建自动化方面更强大。根据项目需求,可以选择合适的库或结合两者使用。记住,使用任何库时都要注意版本兼容性和安全性...

    操作系统课程设计:基于C++&QT可视化模拟操作系统作业调度.zip

    操作系统课程设计:基于C++&QT可视化模拟操作系统作业调度.zip 操作系统课程设计:基于C++&QT可视化模拟操作系统作业调度.zip 操作系统课程设计:基于C++&QT可视化模拟操作系统作业调度.zip 操作系统课程设计:基于...

    Python3编写实用脚本程序-zip操作.zip

    在Python编程语言中,`zip`模块提供了对压缩文件的操作,包括创建、读取和解压ZIP格式的文件。在本教程中,我们将深入探讨如何使用Python3来编写实用的脚本程序,处理ZIP文件。这包括理解ZIP文件格式、使用内置的`...

    操作系统课设,虚拟文件系统实现源码.zip

    虚拟文件系统实现源码.zip操作系统课设,虚拟文件系统实现源码.zip操作系统课设,虚拟文件系统实现源码.zip操作系统课设,虚拟文件系统实现源码.zip操作系统课设,虚拟文件系统实现源码.zip操作系统课设,虚拟文件...

    c# 动态操作 zip 组件 ioniczip

    在.NET开发环境中,C#程序员有时需要处理ZIP文件,例如创建、修改、删除或提取文件。在这种情况下,第三方库如`Ionic.Zip`提供了强大的...在实际项目中,这两个文件都需要包含在项目引用中,以便能够顺利进行ZIP操作。

    php真正的ZIP文件操作类.zip

    php真正的ZIP文件操作类,php将文件夹打包成zip文件,分析了php操作zip文件的技巧,有兴趣的朋友可以引用参考,或者朋友们有更好的zip类,可以上传到我们PHP中文网与我们一起学习分享。

    易语言ZIP文件操作模块

    偶然的机会得到 bszip.dll 库,这个库的年头很长了,最近版本好像是2011年的,官网已不在。公开的几个函数都很简单,上手很快。体积也很小有60K左右,加压缩壳后只有30K左右。经测试可以内存调用(本例没有)。...

    用AS3操作ZIP文件

    在提供的描述中提到了一个专门为Flex开发的ZIP操作开发包,这个包可能包含了对ZIP文件进行编码和解码的类和方法,帮助开发者解决此类问题。 在AS3中操作ZIP文件通常涉及以下几个核心概念: 1. ** ZIP文件格式:** ...

    zlib 1.14 免费的 zip 操作库

    4. `zip.h`:提供了创建和修改ZIP文件的接口,虽然Zlib不支持加密,但仍能用于无密码保护的ZIP文件操作。 5. `ioapi.h`:包含了一些I/O操作的抽象接口,这些接口可以用于不同的文件系统和平台,增强了库的可移植性。...

    操作系统实验-基于ARM架构的简易教学操作系统源码.zip

    操作系统实验-基于ARM架构的简易教学操作系统源码.zip操作系统实验-基于ARM架构的简易教学操作系统源码.zip操作系统实验-基于ARM架构的简易教学操作系统源码.zip操作系统实验-基于ARM架构的简易教学操作系统源码.zip...

    操作系统大作业:基于QT开发的linux系统CPU监视器.zip

    操作系统大作业:基于QT开发的linux系统CPU监视器.zip 操作系统大作业:基于QT开发的linux系统CPU监视器.zip 操作系统大作业:基于QT开发的linux系统CPU监视器.zip 操作系统大作业:基于QT开发的linux系统CPU监视器....

    操作系统实验-可变分区存储管理模拟C#源码.zip

    操作系统实验—可变分区存储管理模拟C#源码.zip操作系统实验—可变分区存储管理模拟C#源码.zip操作系统实验—可变分区存储管理模拟C#源码.zip操作系统实验—可变分区存储管理模拟C#源码.zip操作系统实验—可变分区...

Global site tag (gtag.js) - Google Analytics