日期:2014-05-16  浏览次数:20326 次

JSF 文件下载

最近的项目上用到的是JSF,需求是做一个页面在的下载,实现可以下载文件到客户端。并且和单独的文件下载不同的是,此下载是ZIP文件,就是先把指定目录下的文件先压缩,再进行页面下载。具体代码如下:

/**
* 程序自动打包
* @throws IOException 
*/
public String getZipData(String fileName) throws IOException{

ZipOutputStream zos = null;

FileOutputStream fos = null;

DataOutputStream dos = null;


String zipFileName = ""; //--压缩的文件名

String realInputFilePath = ""; //--压缩文件输入流路径 

try{

String realNewFilePath = "d:/xxx"; //--压缩文件的路径 

zipFileName = realNewFilePath + fileName + ".zip";


realInputFilePath ="e:/xxx"; //--要压缩文件的路径


File directory = new File(realInputFilePath); 

File[] files = directory.listFiles(); //--得到指定目录下所有文件名

if(null != files){

int fileLen = files.length;


fos = new FileOutputStream(zipFileName); //--打包后路径 + 文件名

dos = new DataOutputStream(fos);

zos = new ZipOutputStream(dos); //--定义zip输流