将e:/source文件夹下的文件打个zip包后拷贝到f:/文件夹下面

import java.io.*;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream; public class DirCopy {
public static void main(String[] args) throws Exception{
dirZipCopy("E:/source","F:/source.zip");
}
/**
* 文件夹压缩备份
* @param fromDir 要压缩备份的文件夹
* @param toDir 压缩至的路径
* @throws Exception
*/
public static void dirZipCopy(String fromDir,String toDir) throws Exception{
//创建ZIP输出流
ZipOutputStream zos=new ZipOutputStream(new FileOutputStream(toDir));
//递归处理文件夹
zipCopy(new File(fromDir),zos,"");
zos.close();
}
/**
* 压缩复制文件
* @param fromDir 要压缩的文件
* @param zos ZIP输出流
* @param path 相对于ZIP文件的路径
* @throws Exception
*/
private static void zipCopy(File fromDir,ZipOutputStream zos,String path) throws Exception{
if(fromDir.exists()){
if(fromDir.isDirectory()){
path += fromDir.getName()+"/";
zos.putNextEntry(new ZipEntry(path));
File[] files=fromDir.listFiles();
if(files != null){
for(int i=0;i<files.length;i++){
zipCopy(files[i],zos,path);
}
}
}else{
//putNextEntry():开始写入新的 ZIP 文件条目并将流定位到条目数据的开始处。
zos.putNextEntry(new ZipEntry(path+fromDir.getName()));
InputStream is=new FileInputStream(fromDir);
int len=0;
byte[] b=new byte[1024];
while((len=is.read(b))!=-1){
zos.write(b,0,len);
zos.flush();
}
is.close();
}
}
}
}

文件复制

public class FileCopy2 {
public static void main(String[] args) {
fileCopy("F:/abc.rmvb", "F:/source/abc.rmvb");
}
public static void fileCopy(String srcFileSource,String destFileSource){
try {
//读取原文件内容
FileInputStream in=new FileInputStream(srcFileSource);
FileOutputStream out=new FileOutputStream(destFileSource);
int len=0;
byte[] indata=new byte[1024*10];
while((len=in.read(indata))!=-1){
out.write(indata);
}
in.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

java笔试题: ——将e:/source文件夹下的文件打个zip包后拷贝到f:/文件夹下面的更多相关文章

  1. 华为Java笔试题

    华为Java笔试题+数据库题 一. 单项选择题 1.Java是从( )语言改进重新设计. A.Ada B.C++ C.Pasacal D.BASIC 2.下列语句哪一个正确( ) A. Java程序经 ...

  2. Java笔试题集锦

    Java笔试题集锦 1.MVC的各个部分都有那些技术来实现?怎样实现? 答:MVC是Model-View-Controller的简写."Model" 代表的是应用的业务逻辑(通过J ...

  3. 2016最新Java笔试题集锦

    更新时间:2015-08-13         来源:网络         投诉删除 [看准网(Kanzhun.com)]笔试题目频道小编搜集的范文“2016最新Java笔试题集锦”,供大家阅读参考, ...

  4. java面试题—精选30道Java笔试题解答(二)

    摘要: java面试题-精选30道Java笔试题解答(二) 19. 下面程序能正常运行吗() public class NULL { public static void haha(){ System ...

  5. 北京Java笔试题整理

    北京Java笔试题整理 1.什么是java虚拟机?为什么ava被称作是"平台无关的编程语言? 答:Java虚拟机可以理解为一个特殊的"操作系统",只是它连接的不是硬件,而 ...

  6. 【笔试题】精选30道Java笔试题解答

    转自于:精选30道Java笔试题解答 精选30道Java笔试题解答 1. 下面哪些是Thread类的方法() A. start() B. run() C. exit() D. getPriority( ...

  7. 精选30道Java笔试题附答案分析

    精选30道Java笔试题解答 都是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我一样参加各大IT校园招聘的同学们,纯考Java基础功底,老手们就不用进来了,免得笑 ...

  8. 汉王JAVA笔试题

    汉王JAVA笔试题 1,jsp中动态include与静态include的区别? (1)动态包含总是会检查文件中的变化,适合用于包含动态页面,并且可以带参数. (2)静态包含不会检查所含文件的变化,适用 ...

  9. java笔试题13-11-21

    中xxx科技公司java笔试题 今天去参加一个公司的面试,去先做了一份笔试题,妈的,太他妈难了(对于我来说,最后做完一个员工说你是不是投错简历了,都是空白,我说我做的大部分都对了..最后面试都没有,就 ...

随机推荐

  1. Linux就这个范儿 第18章 这里也是鼓乐笙箫 Linux读写内存数据的三种方式

    Linux就这个范儿 第18章  这里也是鼓乐笙箫  Linux读写内存数据的三种方式 P703 Linux读写内存数据的三种方式 1.read  ,write方式会在用户空间和内核空间不断拷贝数据, ...

  2. Ninject简单的Demo

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. 第十一篇 SQL Server安全审核

    本篇文章是SQL Server安全系列的第十一篇,详细内容请参考原文. SQL Server审核SQL Server审核是指你可以在数据库或服务器实例监控事件.审核日志包含你选择捕获的事件的列表,在服 ...

  4. swift 异步加载图片

    import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: ...

  5. mybatis-spring

    现成的中文文档 首先,项目依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifa ...

  6. bind: address already in use

    2016/04/18 09:46:06 server.go:36: listen at 0.0.0.0:9530 2016/04/18 09:46:06 server.go:39: listen er ...

  7. tomcat 6.0.44 “has failed to stop it. This is very likely to create a memory leak” 问题调查

    1. 问题起因 我们项目中缓存模块某个实现采用了ehcache(2.4.3),当项目部署到tomcat中后,对tomcat做停止服务操作(点击eclipse的console红色的停止按钮,奇怪的是有小 ...

  8. linux:问题

    1>.Xshell远程连接linux闲置时间过长会自动中断连接: 2>.在linux环境下乱码: 3>.在linux下面执行mv /bin/ls /root/bin之后执行ls就不能 ...

  9. 同一个主机上的JVM实例之间通信

    hadoop yarn里用了RPC调用.NM里面文件本地化类ContainerLocalizer用RPC心跳方式跟本机的ResourceLocalizationService通信. 用shared m ...

  10. SQLSERVER:sqlserver2008r2安装好后,自动提示功能不可以使用

    刚安装好的sqlserver2008r2x64,写一些sql时,自动提示功能失效了. 解决排查一: 找到tools->options->Text Editor->Transact-S ...