`

jsp 批量下载文件夹/文件(j解决中文乱码问题)

阅读更多
    最近,一直在研究批量下载的问题,刚开始的想法是批量选择文件后,点击下载按钮,会弹出一个路径选择框,选择路径后,几个文件同时下载下来...研究了一段时间,发现自己是菜鸟,实现不鸟呀...
    后来,是在没办法,就想实现批量打包下载,不管是文件夹,还是文件,都能批量下载.经过我一天半的努力,终于实现啦
    批量压缩文件夹/文件的代码如下:
   
 public void ZipFiles(java.io.File[] srcfile,java.io.File zipfile){
        byte[] buf = new byte[1024];
        try{
            //create the zip file
            org.apache.tools.zip.ZipOutputStream out = new org.apache.tools.zip.ZipOutputStream(new FileOutputStream(zipfile));
            out.setEncoding("gbk");
            //Compress the files
            for(int i = 0; i < srcfile.length;i++){
                String path = srcfile[i].getName();
                zip(out,srcfile[i],path);               
            }
            //Complete the zip file
            out.close();
        }catch(IOException e){
            e.printStackTrace();
        }
       
}

private void zip(org.apache.tools.zip.ZipOutputStream out,File f,String base){
  try{
    if(f.isDirectory()){
        File[] f1 = f.listFiles();
        out.putNextEntry(new org.apache.tools.zip.ZipEntry(base+"/"));
        base=base + "/";
        for(int i = 0; i <f1.length; i++){
            zip(out,f1[i],base + f1[i].getName());
        }
    }else{
        String fileName=f.getName();
        int index = 0;
        index = fileName.lastIndexOf(".");
        String sub = fileName.substring(index+1);
        if(!sub.equals("crc")){
            out.putNextEntry(new org.apache.tools.zip.ZipEntry(base));
            FileInputStream in = new FileInputStream(f);
            byte[] buf = new byte[1024];
            int b;
            while((b = in.read(buf))>0){
                out.write(buf,0,b);
            }
            in.close();
        }
    }
  }catch(IOException e){
        e.printStackTrace();
  }
}


    因为我的文件夹是存在hadoop上的,为了办证数据的完整性,hadoop使用了CRC数据校验。会对每一个文件产生对应的filename.crc文件。故我需要识别出.crc文件,不对其进行打包...
分享到:
评论

相关推荐

    解决JSP中文乱码问题

    解决 JSP 中文乱码问题 解决 JSP 中文乱码问题是一个很常见...解决 JSP 中文乱码问题需要从多方面入手,包括在 JSP 文件中指定编码方式,在 Java 文件中指定编码方式,在页面中指定编码方式,并确保编码方式的一致性。

    jsp用过滤器解决中文乱码问题的方法.docx

    jsp 用过滤器解决中文乱码问题的方法 jsp(JavaServer Pages)是一种广泛应用于Web开发的技术,但是在实际开发中,我们经常会遇到中文乱码问题。为了解决这个问题,我们可以使用jsp过滤器来实现编码设置。我今天要...

    jspsmartupload-解决中文乱码

    最近实验室做了一个项目,使用jspsmartupload来实现的文件的上传下载,原来在windows平台运行的挺好,但是后来系统移植到linux平台上,结果在上传或下载的文件名中有中文时就会出现乱码。后来查了网上一些人的解决...

    JSP中文乱码问题解决办法

    JSP 中文乱码问题解决办法 JSP 页面中中文乱码问题是指在 JSP 页面中使用中文时,页面显示乱码的现象。这种问题的解决办法可以从多方面入手,包括设置页面的字符编码、使用 POST 方式提交表单、使用 GET 方式提交...

    jsp中文乱码问题解决

    jsp中文乱码问题解决 jsp中文乱码问题是jsp开发中常见的问题之一,本文将围绕jsp中文乱码问题的解决展开讨论。首先,我们需要了解jsp中文乱码问题产生的原因,然后再讨论解决方案。 jsp中文乱码问题产生的原因是...

    jsp文件上传,解决中文乱码

    接下来,我们将深入探讨如何解决`JSP文件上传`时的中文乱码问题。 首先,我们需要理解文件上传的基本流程。在`JSP`中,通常会使用`&lt;form&gt;`标签的`enctype="multipart/form-data"`属性来定义一个支持文件上传的表单...

    真正解决jspSmartUpload组件上传下载文件时中文乱码问题

    真正解决jspSmartUpload组件上传下载文件时中文乱码问题。以前在网上也找过!!!下载了些,都没能解决中文乱码问题!自己改了源代码,并做成jar包,直接用就可以。 另,我把File()类 改成了 SmartFile()类。详情请...

    jsp实现上传和下载 完全解决中文乱码问题

    最近做了jsp项目,要用到上传和下载,从网上下了一个smartupload项目文件,封成jar包之后使用发现会出现中文乱码问题,后来网上一查,发现出现这个问题的人还真多,很多博客里面只是说明了如何解决,并没有具体实现...

    jsp实现文件下载与中文文件名乱码问题解决

    本文将深入解析如何在JSP中实现文件下载,并解决中文文件名乱码的问题。 首先,我们需要了解HTTP协议在处理文件下载时的角色。当用户请求下载一个文件时,服务器需要设置响应头来指示浏览器如何处理这个响应。在JSP...

    彻底解决jspsmartupload中文下载乱码问题

    用几个简单的java语句操作java.io.BufferedInputStream和java.io.BufferedOutputStream,就能彻底解决jspSmartUpload乱码问题。下载的时候无需再用jspsmartupload。 zip包中包含了jspsmartupload.jar和文件上传、...

    解决中文乱码问题

    "解决中文乱码问题" 在Java编程中,中文乱码是一个常见的问题。为了解决这个问题,我们需要从多个方面入手。首先,我们需要将Eclipse的编码方式设置为UTF-8,以便正确地显示中文字符。其次,我们需要在浏览器中将...

    jsp SmartUpload 中文乱码问题解决.docx

    jsp SmartUpload 中文乱码问题解决是指在使用 jsp 的 SmartUpload 组件进行文件上传下载时,遇到中文乱码问题的解决方法。在这篇文章中,我们将介绍如何解决 jsp 中 SmartUpload 中文乱码问题。 一、上传 在使用 ...

    jsp中文乱码问题jsp中文乱码问题详解

    jsp中文乱码问题的出现是由于编码格式不一致所导致的,可以通过确保jsp文件的存储格式、解码格式和控制浏览器的解码方式一致来解决乱码问题。同时,在使用Post和Get方式提交表单时,需要指定提交的编码格式,以避免...

    多文件上传例子(解决中文乱码)

    多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...

    jsp 过滤器——解决中文乱码问题

    ### jsp过滤器——解决中文乱码问题 #### 背景介绍 在Web应用开发过程中,特别是使用Java Server Pages (JSP)进行中文字符处理时,经常遇到的一个问题是中文字符显示为乱码。这主要是因为客户端与服务器端之间存在...

    利用过滤器解决JavaWeb(JSP)的乱码问题

    总之,解决JavaWeb中的乱码问题需要从多个层面进行考虑:设置过滤器统一请求和响应的编码,确保JSP页面的编码正确,以及在处理文件时注意文件内容的编码。通过这些方式,我们可以有效防止和解决乱码问题,提高应用...

    JSP中文乱码问题解决总结

    本篇文章将深入探讨JSP中文乱码问题的原因、解决策略以及预防措施。 一、乱码产生的原因 1. 字符集不一致:JSP页面、Servlet、HTML、CSS、JavaScript、数据库等环节如果使用的字符集不统一,容易导致中文字符在...

    几种常用解决jsp中文乱码的方案

    JSP 中文乱码是动态网站开发中经常遇到的问题,本文将从产生 JSP 中文乱码的四种类型入手,分析乱码产生的原因,并给出消除乱码的具体方法。 一、页面中文乱码的处理 JSP 采用 ISO-8859-1 作为默认的页面字符编码...

    Servlet及jsp解决中文乱码问题

    ### Servlet及JSP解决中文乱码问题 #### 一、引言 在Web开发中,中文乱码问题一直是困扰开发者的一大难题。特别是在使用Java技术栈(如Servlet与JSP)进行开发时,如果处理不当,很容易出现中文字符显示乱码的情况...

Global site tag (gtag.js) - Google Analytics