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笔试题 今天去参加一个公司的面试,去先做了一份笔试题,妈的,太他妈难了(对于我来说,最后做完一个员工说你是不是投错简历了,都是空白,我说我做的大部分都对了..最后面试都没有,就 ...
随机推荐
- ubuntu mysql 远程连接
最近需要远程连接mysql服务器,先进行简单的测试,过程记录于此. 参考链接: http://blog.chinaunix.net/uid-28458801-id-3445261.html http: ...
- 在Ubutu14.04的Eclipse启动Tomcat的问题
PS:因为tomcat文件夹的权限问题,导致我研究了一中午,首先是New Server时,不能输入server name,之后我删除了 org.eclipse.wst.server.core.pref ...
- Android ListView自定义Adapter使用误区
参考博客:BaseAdapter中重写getview的心得以及发现convertView回收的机制 使用自定义的BaseAdapter实现LIstView的展示 由于Recycler(反复循环器)的机 ...
- Android --Android Stuido混淆签名打包
参考博客:Android studio 使用心得(五)—代码混淆和破解apk 参考博客:Android studio 使用心得(四)---android studio 多渠道打包 参考博客:Andro ...
- 第五篇 Replication:事务复制-How it works
本篇文章是SQL Server Replication系列的第五篇,详细内容请参考原文. 这一系列包含SQL Server事务复制和合并复制的详细内容,从理解基本术语和设置复制的方法,到描述它是如何工 ...
- 轻量级的jquery
话不多说,直接上源代码 一.tool.js 封装一些共用方法,以及相关的浏览器兼容细节,供Base.js调用 //浏览器检测,一旦加载即执行 (function() { window.sys = {} ...
- javascript实例学习之二——类新浪微博的输入框
该案例实现如下效果,具体可见新浪微博网站的微博发布框 实现 以下效果效果1:当光标移入文本框时,文本框上方的文字发生变化,显示剩余可以输入的字数,当光标移出文本框,并且文本框中没有任何输入时,恢复最初 ...
- iOS让数组内对象执行同一方法
// 让数组中的所有对象都执行removeFromSuperview方法 [self.answerView.subviews makeObjectsPerformSelector:@selector( ...
- iOS -Swift 3.0 -Array(数组与可变数组相关属性及用法)
// // ViewController.swift // Swift-Array // // Created by luorende on 16/9/12. // Copyright © 2016年 ...
- 论--如何通过代码解析plist文件创建对应的控制器,以及控制器中的控件
通过懒加载把最初的plist文件加载后,根据plist文件文件中的目标控制器进行跳转,根据加载的plist文件中的plist_name加载将要跳转进去的控制器界面的控件等等. 以上根据target_v ...