public class TestZip {
public static String SERPEROT = /
public static int BUFFER =
public static void main(String args[]){
zip( e:/hello/ e:/hello zip )
}
public static void zip(String srcFile String descFile){
ZipOutputStream zos = null
FileOutputStream fos = null
File file = null
try {
fos = new FileOutputStream(descFile)
zos = new ZipOutputStream(fos)
file = new File(srcFile)
String folder = srcFile substring(srcFile lastIndexOf( / ) + srcFile length())
zip(zos file folder)
} catch (FileNotFoundException e) {
e printStackTrace()
}finally{
笑雀铅try{
if(zos != null){zos close()}
if(fos != null){fos close()}
岁雹}catch(Exception e){
e printStackTrace()
}
}
}
private static void zip(ZipOutputStream descFile File srcFile String srcfolder){
FileInputStream fis = null
System out println(srcFile isDirectory())
try{
if(srcFile isDirectory()){
File[] files = srcFile listFiles()
descFile putNextEntry(new ZipEntry(srcfolder + / ))//是压缩包里面的路径
碰好 srcfolder = srcfolder length() == ? : srcfolder + /
System out println(srcfolder)
for(int i= i<files lengthi++){
zip(descFile files[i] srcfolder + files[i] getName())
}
}else{
descFile putNextEntry(new ZipEntry(srcfolder))
fis = new FileInputStream(srcFile)
byte[] bytes = new byte[ ]
int n =
while((n = fis read(bytes)) != ){
descFile write(bytes n)
}
}
}catch(Exception e){
e printStackTrace()
}finally{
try{
if(fis != null){fis close()}
}catch(Exception e){
e printStackTrace()
}
}
}
lishixinzhi/Article/program/Java/hx/201311/25760public static void findFileList(File dir,HashSet dirs,HashSet fileNames ) {
if (!dir.exists() || !dir.isDirectory()) {// 判断是否存在目录
return
}
String[] files = dir.list()//裂蔽 读取目录下的所有目录文肆兆州件信息
for (int i = 0i <files.lengthi++) {// 循环,添加文件名或回调自身
File file = new File(dir, files[i])
if (file.isFile() &&file.getName().startsWith("exam"猜姿)) {// 如果文件
fileNames.add(dir + "\\" + file.getName())
} else {// 如果是目录
dirs.add(dir)
findFileList(file,dirs,fileNames)// 回调自身继续查询
}
}
}
public static void main(String[] args) {
HashSet dirs = new HashSet()
HashSet fileNames = new HashSet()
findFileList(new File("D:\\zhidao"),dirs,fileNames)
System.out.println("目录:"+dirs)
System.out.println("exam开头的文件:"+fileNames)
}
package cn.itcast.otherimport java.io.File
public class Demo1 {
public static void main(String[] args) {
/早亮* File dir = new File("F:\\project\\day22")
listFiles1(dir, "|--")*/
File dir = new File("F:\\aa")
deleteDir(dir)
}删除一个非空的目
//
public static void deleteDir(File dir){
File[] files = dir.listFiles()//列出所有子文件
for(File file: files){
if(file.isFile()){
file.delete()
}else if(file.isDirectory()){
deleteDir(file)
}
}
dir.delete()
}
//列出一个文件夹中所有符合条件的文件和目录陆简宽咐闭。
public static void listFiles1(File dir,String space){
File[] files = dir.listFiles()
for(File file : files ){
if(file.isFile()){
System.out.println(space+file.getName())
}else if(file.isDirectory()){
System.out.println(space+file.getName())
listFiles1(file,"| "+space)
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)