java文件工具类

原创 2004年12月30日 14:42:00

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2002</p>
 * <p>Company: </p>
 * @author yinjin
 * @version 1.0
 */
public class FileUtil {
 public static void rmdirs(File path) {
  try {
   if (path.isFile()) {
    path.delete();
    return;
   }
   File[] subs = path.listFiles();
   if (subs.length == 0) {
    path.delete();
   }
   else {
    for (int i = 0; i < subs.length; i++) {
     rmdirs(subs[i]);
    }
    path.delete();
   }
  }
  catch (Exception ex) {
  }
 }
 public static void xcopy(File src,File destine)
 {
  try {
   if (!src.exists() || src.getCanonicalPath().equals(destine.getCanonicalPath())) return;
  }
  catch (IOException ex) {
  }
  File[] chs = src.listFiles();
  for (int i=0;i<chs.length;i++)
  {
   if (chs[i].isFile())
   {
    File destineFile = new File(destine,chs[i].getName());
    copy (chs[i],destineFile);
   }
   else
   {
    File destineDir = new File(destine,chs[i].getName());
    destineDir.mkdirs();
    xcopy(chs[i],destineDir);
   }
  }
 }

 public static void copy(File src,File destine)
 {
  try{
   if (!src.exists() || src.getCanonicalPath().equals(destine.getCanonicalPath())) return;
   FileInputStream fins = new FileInputStream(src);
   copy(fins,destine);
   destine.setLastModified(src.lastModified());
  }
  catch(Exception e)
  {}
 }
 public static void copy(InputStream fins, File destine){
  try {
   if (fins == null) return;
   destine.getParentFile().mkdirs();
   FileOutputStream fos = new FileOutputStream(destine);
   byte[] buf = new byte[1024];
   int readLen;
   while ((readLen = fins.read(buf,0,buf.length))>0)
   {
    fos.write(buf,0,readLen);
   }
   fos.flush();
   fos.close();
   fins.close();
  }
  catch (Exception ex) {
  }
 }
 public static void move(File src,File destine){
  try {
   if (!src.exists() || src.getCanonicalPath().equals(destine.getCanonicalPath())) return;
  }catch(IOException ex){}
  copy(src,destine);
  src.delete();
 }
 /**
  * 重命名文件而不改变后缀
  * @param fromFilename:要重命名的文件名
  * @param toFilename:新的文件名,没有后缀
  */
 public static String rename(String fromFilename,String toFilename)
 {
  String filename = toFilename;
  int tail_index = fromFilename.lastIndexOf(".");
  if(tail_index != -1)
  {
      String tail = fromFilename.substring(tail_index);  
      filename = toFilename+tail;     
  }
  return filename;
  
 }
 /**
  * 根据给定的路径创建目录
  * @param dest
  * @return 成功返回true,失败返回false
  */
 public static boolean makeDir(String dest)
 {
  boolean flag = true;
  try
  {
      File f = new File(dest);   
   if(!f.mkdirs())
   {
    flag = false;
   }   
  }
  catch(Exception e)
  {
   e.printStackTrace();
   flag = false;
  }
  return flag;
 }
 /**
  * 测试方法
  * @param args
  */
 public static void main(String []args)
 {
  String f = "U765P8T1D110044F913DT20040912232529";
  String e=FileUtil.rename(f,"修改");
  System.out.println("源文件名称:"+f+"/n经过修改以后的文件名:"+e);
  String path ="E://BJhouseApplicationsafasdf//bjhouseHomeasdf//configasdf";
  String lname = DateUtil.getTimeString();
  path += File.separator+lname;
  if(FileUtil.makeDir(path))
  {
   System.out.println("目录创建成功");
  }
  else
      System.out.println("目录创建失败");
  
 } 
}

 

文件处理工具类(JAVA)[重命名,移动,格式化]

Ref : 工具类源码:import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; impor...
  • Love_Legain
  • Love_Legain
  • 2017年04月22日 15:53
  • 381

工具类—Java下载远程文件到本地

/** * Copyright 2017 * 注意:请勿修改 * All right reserved. */package test1;import java.io.File; im...
  • u012758088
  • u012758088
  • 2017年08月12日 15:56
  • 979

java中常用的工具类——File工具类

package com.itjh.javaUtil; import java.io.ByteArrayInputStream; import java.io.File; import java.i...
  • lx19860203
  • lx19860203
  • 2014年07月03日 16:55
  • 501

Java操作阿里云OSS系统工具类

import com.aliyun.oss.ClientException; import com.aliyun.oss.OSSClient; import com.aliyun.oss.OSSE...
  • qq_34687787
  • qq_34687787
  • 2016年12月29日 14:12
  • 317

java文件下载工具类

/** * Desc:下载工具类 * @date 2014-6-26 */ public class DownLoadUtil { /** * Desc:根据文件头判断请求来自的浏览器,...
  • dly120219891208
  • dly120219891208
  • 2014年06月26日 11:27
  • 1660

超全的文件工具类 FileUtil

结合以前的项目开发中遇到的不同的文件操作,在这里基本上提取出了所遇到过的文件操作的工具类。1 我项目中用到的文件工具类1 读取raw文件、file文件,drawable文件,asset文件,比如本地的...
  • u014315849
  • u014315849
  • 2016年03月04日 17:55
  • 4442

JAVA文件工具类之——文件压缩

1.压缩文件夹 2.压缩单个文件 3.使用gzip进行压缩 4.使用gzip进行解压缩 /** * @Title: compressedFiles * @Descriptio...
  • qq_33377979
  • qq_33377979
  • 2017年09月26日 19:35
  • 60

JAVA文件操作封装工具类

在开发中经常会用到文件操作类,这里封装一下,以便大家参考
  • dly120219891208
  • dly120219891208
  • 2014年06月26日 09:55
  • 522

OkHttp网络连接封装工具类

最近,临近春节放假,把自己最近项目中使用 的okhttp使用做个总结,将自己的工具类贡献出来。其中有部分是参考了鸿洋的部分。    就直接上代码。   package com.lauren.simpl...
  • u010046908
  • u010046908
  • 2016年01月31日 14:31
  • 4589

JAVA工具类(4) ---文件工具类fileUtil(文件增删改,文件拷贝等)

package com.gcloud.common;import java.io.*; import java.net.MalformedURLException; import java.net.U...
  • lovoo
  • lovoo
  • 2017年09月08日 22:17
  • 270
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java文件工具类
举报原因:
原因补充:

(最多只允许输入30个字)