- 浏览: 247348 次
- 性别:
- 来自: Shanghai
文章分类
最新评论
-
a790851624:
本人刚到公司,接到一个任务:在java代码中集成kettle的 ...
java应用程序中集成Kettle -
obnijeh:
谢谢共享,正需要。
Kettle 简介及Kettle用户操作手册 -
zhaokui:
很好,很好
Java中SimpleDateFormat用法详解——获得常用时间表示法(二) -
zhaokui:
,不错,不错
Java中SimpleDateFormat用法详解(一) -
babaoqi:
学习下,O(∩_∩)O谢谢了
Kettle 简介及Kettle用户操作手册
//文件打包下载
public static HttpServletResponse downLoadFiles(List<File> files,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
try {
/**这个集合就是你想要打包的所有文件,
* 这里假设已经准备好了所要打包的文件*/
//List<File> files = new ArrayList<File>();
/**创建一个临时压缩文件,
* 我们会把文件流全部注入到这个文件中
* 这里的文件你可以自定义是.rar还是.zip*/
File file = new File("c:/certpics.rar");
if (!file.exists()){
file.createNewFile();
}
response.reset();
//response.getWriter()
//创建文件输出流
FileOutputStream fous = new FileOutputStream(file);
/**打包的方法我们会用到ZipOutputStream这样一个输出流,
* 所以这里我们把输出流转换一下*/
// org.apache.tools.zip.ZipOutputStream zipOut
// = new org.apache.tools.zip.ZipOutputStream(fous);
ZipOutputStream zipOut
= new ZipOutputStream(fous);
/**这个方法接受的就是一个所要打包文件的集合,
* 还有一个ZipOutputStream*/
zipFile(files, zipOut);
zipOut.close();
fous.close();
return downloadZip(file,response);
}catch (Exception e) {
e.printStackTrace();
}
/**直到文件的打包已经成功了,
* 文件的打包过程被我封装在FileUtil.zipFile这个静态方法中,
* 稍后会呈现出来,接下来的就是往客户端写数据了*/
// OutputStream out = response.getOutputStream();
return response ;
}
/**
* 把接受的全部文件打成压缩包
* @param List<File>;
* @param org.apache.tools.zip.ZipOutputStream
*/
public static void zipFile
(List files,ZipOutputStream outputStream) {
int size = files.size();
for(int i = 0; i < size; i++) {
File file = (File) files.get(i);
zipFile(file, outputStream);
}
}
public static HttpServletResponse downloadZip(File file,HttpServletResponse response) {
try {
// 以流的形式下载文件。
InputStream fis = new BufferedInputStream(new FileInputStream(file.getPath()));
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
// 清空response
response.reset();
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition", "attachment;filename=" + file.getName());
toClient.write(buffer);
toClient.flush();
toClient.close();
} catch (IOException ex) {
ex.printStackTrace();
}finally{
try {
File f = new File(file.getPath());
f.delete();
} catch (Exception e) {
e.printStackTrace();
}
}
return response;
}
/**
* 根据输入的文件与输出流对文件进行打包
* @param File
* @param org.apache.tools.zip.ZipOutputStream
*/
public static void zipFile(File inputFile,
ZipOutputStream ouputStream) {
try {
if(inputFile.exists()) {
/**如果是目录的话这里是不采取操作的,
* 至于目录的打包正在研究中*/
if (inputFile.isFile()) {
FileInputStream IN = new FileInputStream(inputFile);
BufferedInputStream bins = new BufferedInputStream(IN, 512);
//org.apache.tools.zip.ZipEntry
ZipEntry entry = new ZipEntry(inputFile.getName());
ouputStream.putNextEntry(entry);
// 向压缩文件中输出数据
int nNumber;
byte[] buffer = new byte[512];
while ((nNumber = bins.read(buffer)) != -1) {
ouputStream.write(buffer, 0, nNumber);
}
// 关闭创建的流对象
bins.close();
IN.close();
} else {
try {
File[] files = inputFile.listFiles();
for (int i = 0; i < files.length; i++) {
zipFile(files[i], ouputStream);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
发表评论
-
Java虚拟机工作原理详解
2014-05-19 17:11 635一、类加载器 首先来看一下java程序的执行过程。 ... -
xml特殊字符转义技术
2013-12-05 15:14 1032在项目测试阶段,测试人员会输入一些特殊字符,比如:< ... -
junit4注解
2013-10-25 16:10 7591 @BeforeClass @AfterC ... -
java内部类的作用分析
2012-12-14 16:33 790提起Java内部类(Inner Class)可能很多人不 ... -
Weblogic远程调试
2012-10-15 15:04 712配置weblogic远程调试之前,需要做这几个工作: 1 ... -
log4j.properties配置详解
2012-06-08 11:18 752Log4J的配置文件(Configuration Fil ... -
Tomcat部署Web应用方法总结
2012-05-23 11:20 1243Tomcat部署Web应用方法 ... -
有享商城--有精彩,齐分享,享购物,享自游,享团购,享优惠
2012-03-29 12:35 0有享商城于2012-03-29上线运营 有 ... -
oracle恢复误删除数据,解除锁定的等sql语句
2011-11-24 10:51 1086注意:数据库版本是10g,不过大部分9i的也适用,闪回9i就没 ... -
log4j日志级别
2011-11-17 20:22 974日志记录器(Logger)是日 ... -
cookies原理
2011-11-04 11:14 939实际上,Cookie的作用就是与服务器互动。 用户登录:在很多 ... -
tomcat 的一些基本配置
2011-11-01 14:51 516管理员配置:打开tomcat安装目录里面的conf/tomca ... -
web.xml中<security-constraint>和四种认证类型
2011-11-01 10:04 1015<security-constraint> 的子元 ... -
Ubuntu通过apt-get命令安装java jdk6
2011-09-01 08:15 1694其实Ubu ... -
Maven,ant 工具
2011-08-24 17:31 1306一:Maven,ant 工具比较 Apache ... -
java将文件打成zip包
2011-08-23 13:47 1887大家可能对于Zip格式的 ... -
jsp动态上传多个文件---实用的例子
2011-08-17 17:26 1215现在还有一个错误就是文件名是中文的话,就乱码。还在改进. u ... -
利用JAVA API发送E-mail
2011-08-03 16:57 894JAVA API 文档见附件 / ... -
va自动创建多层文件目录
2011-07-28 17:50 725... -
JavaMail 发送邮件例子(包括附件,及信息,及html内容的图片处理)
2011-07-07 18:36 1393public void SendMessage(Str ...
相关推荐
本文将详细讲解如何使用Java实现将多目录多层级的文件打成ZIP包,以及如何解压这些ZIP包。我们将主要关注`FileUtils.java`这个类,以及依赖的`commons-compress-1.1.jar`库。 `commons-compress-1.1.jar`是Apache ...
JAVA 根据 URL 把多文件打包成 ZIP 下载实例是指通过 JAVA 将多个文件根据 URL 下载并打包成 ZIP 文件的过程。在这个过程中,我们可以使用 JAVA 的 URL 连接和 ZIP 压缩技术来实现文件的下载和打包。 在这个例子中...
综上所述,"生成excel并打包成zip文件"这个任务涉及到使用Java编程语言,特别是Apache POI库来生成Excel文件,再结合Java标准库的压缩功能将Excel和文本文件打包成ZIP。整个过程涉及到了文件的创建、写入、压缩和...
通过创建`ZipOutputStream`实例,可以将多个文件添加到同一个ZIP包中。这个过程包括: - 初始化`ZipOutputStream`,指定输出文件路径。 - 对于每个要压缩的文件,创建`ZipEntry`,设置其名称和属性。 - 将文件...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...
在Java编程环境中,FTP(File Transfer Protocol)是一个用于在计算机之间传输文件的标准协议。通过Java实现FTP批量下载文件以及解压的功能,可以极大地提高工作效率,特别是在处理大量数据时。以下是一份详细的步骤...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...
文件压缩是指将文件内容通过特定算法转换成较小体积的数据表示形式,以减少存储空间和网络传输的负担。Java提供了多种压缩算法,例如Deflater压缩算法,可以实现数据的压缩。在本例中,使用了JPEG格式的图片压缩作为...
Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码,文件操作,压缩包查看 Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...
在Java开发过程中,将编译后的`.class`文件打包成`.jar`(Java Archive)文件是非常常见的操作。`.jar`文件不仅便于分发和管理,还可以实现类的压缩和优化,以及提供版本控制和安全特性。以下是将`.class`文件打包成...
Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码,文件操作,压缩包查看 Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码...
Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码,文件操作,压缩包查看 Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码...
总的来说,这个"java链接顺风系统实例.zip"项目涵盖了Java网络编程、API接口调用、物流业务逻辑等多个方面的知识,对于想学习或已经在从事物流信息化开发的工程师来说,具有很高的学习价值。通过这个实例,你可以...
CSV文件的基本结构是每行由一个或多个字段组成,字段之间用逗号分隔。在JavaCSV库中,主要有两个核心类:`CSVReader`和`CSVWriter`。`CSVReader`用于读取CSV文件,而`CSVWriter`则用于将数据写入CSV文件。 1. CSV...
实例89 Zip格式压缩、解压缩文件 228 实例90 从Jar中读取文本 232 实例91 流标记分割和统计字符串 234 实例92 Java操作Excel文件 237 第11章 Java高级特性 245 实例93 自动装箱与拆箱 245 实例94 for/in循环 ...
在实际环境中,你需要将这两个源文件(Server.java和Client.java)编译成`.class`字节码文件,然后分别运行服务器和客户端。如果遇到问题,可以通过日志输出、调试器或者打印语句来定位并解决问题。 【安全与优化】...
本实例源码"基于Java的实例源码-QR解码的实现程序.zip"提供了一个使用Java语言编写的QR码解码器,帮助开发者了解如何在自己的项目中实现对QR码的解析功能。下面我们将详细探讨Java QR解码实现的相关知识点。 首先,...
在这个详细教程中,我们将深入探讨如何编写这样的程序,并了解相关的Java知识点。 首先,我们需要知道Java中的基本输出机制,这涉及到`System.out.println()`方法。这个方法用于在控制台上打印一行文本,是Java中最...