java笔试题: ——将e:/source文件夹下的文件打个zip包后拷贝到f:/文件夹下面
将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:/文件夹下面的更多相关文章
- 华为Java笔试题
华为Java笔试题+数据库题 一. 单项选择题 1.Java是从( )语言改进重新设计. A.Ada B.C++ C.Pasacal D.BASIC 2.下列语句哪一个正确( ) A. Java程序经 ...
- Java笔试题集锦
Java笔试题集锦 1.MVC的各个部分都有那些技术来实现?怎样实现? 答:MVC是Model-View-Controller的简写."Model" 代表的是应用的业务逻辑(通过J ...
- 2016最新Java笔试题集锦
更新时间:2015-08-13 来源:网络 投诉删除 [看准网(Kanzhun.com)]笔试题目频道小编搜集的范文“2016最新Java笔试题集锦”,供大家阅读参考, ...
- java面试题—精选30道Java笔试题解答(二)
摘要: java面试题-精选30道Java笔试题解答(二) 19. 下面程序能正常运行吗() public class NULL { public static void haha(){ System ...
- 北京Java笔试题整理
北京Java笔试题整理 1.什么是java虚拟机?为什么ava被称作是"平台无关的编程语言? 答:Java虚拟机可以理解为一个特殊的"操作系统",只是它连接的不是硬件,而 ...
- 【笔试题】精选30道Java笔试题解答
转自于:精选30道Java笔试题解答 精选30道Java笔试题解答 1. 下面哪些是Thread类的方法() A. start() B. run() C. exit() D. getPriority( ...
- 精选30道Java笔试题附答案分析
精选30道Java笔试题解答 都是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我一样参加各大IT校园招聘的同学们,纯考Java基础功底,老手们就不用进来了,免得笑 ...
- 汉王JAVA笔试题
汉王JAVA笔试题 1,jsp中动态include与静态include的区别? (1)动态包含总是会检查文件中的变化,适合用于包含动态页面,并且可以带参数. (2)静态包含不会检查所含文件的变化,适用 ...
- java笔试题13-11-21
中xxx科技公司java笔试题 今天去参加一个公司的面试,去先做了一份笔试题,妈的,太他妈难了(对于我来说,最后做完一个员工说你是不是投错简历了,都是空白,我说我做的大部分都对了..最后面试都没有,就 ...
随机推荐
- 禁用ipv6
禁用ipv6 1.在/etc/sysctl.conf 添加一行:net.ipv6.conf.all.disable_ipv6=1 2.在/etc/sysconfig/network 添加一行:NETW ...
- 获取微信服务器IP地址
关键字:微信公众平台 微信服务器 IP地址 如果公众号基于安全等考虑,需要获知微信服务器的IP地址列表,以便进行相关限制,可以通过该接口获得微信服务器IP地址列表. 接口调用请求说明 http请求方式 ...
- iOS 事件穿透
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...
- Newtonsoft.Json的使用
JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.和 XML 一样,JSON 也是基于纯文本的数据格式 ...
- Redis Sets
Sets Sets 就是一个集合,集合的概念就是一堆不重复值的组合.利用Redis提供的Sets数据结构,可以存储一些集合性的数据,比如在微博应用中,可以将一个用户所有的关注人存在一个集合中,将其所有 ...
- js兼容
//document.getElementsByClassName(); if (!document.getElementsByClassName) { document.getElementsByC ...
- G面经prepare: X-Straight
Define “X-Straight” as X cards with consecutive numbers (X >= 3). Determine if the deck can be fu ...
- codevs 1206 保留两位小数
http://codevs.cn/problem/1206/ 1206 保留两位小数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze 题解 查看运行结果 ...
- [原创]java WEB学习笔记69:Struts2 学习之路-- 消息处理与国际化,概述,配置国际资源文件,访问国际化消息,通过超链接切换语言
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- [转]怎样解决Myeclipse内存溢出?
在用myeclipes10 开发 遇到了 内存溢出问题,百度了很久,这篇比较完善. 总结起来三个方面去检查 1)myeclipes的配置:myeclipes 10 的安装路径下 的myeclipse. ...