commons io文件操作示例分享_java

复制代码 代码如下:

package com.pzq.io;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.StringReader;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.io.FileUtils;

/**
 * 文件操作工具类
 * @version 1.0 2013/07/16
 *
 */
public class FileUtil {

 /** 
     * 复制文件或者目录,复制前后文件完全一样。 
     * @param resFilePath   源文件路径 
     * @param distFolder    目标文件夹 
     * @IOException         当操作发生异常时抛出 
     */
    public static void copyFile(String resFilePath, String distFolder) 
            throws IOException { 
        File resFile = new File(resFilePath); 
        File distFile = new File(distFolder); 
        if (resFile.isDirectory()) { // 目录时 
            FileUtils.copyDirectoryToDirectory(resFile, distFile); 
        } else if (resFile.isFile()) { // 文件时 
            // FileUtils.copyFileToDirectory(resFile, distFile, true); 
            FileUtils.copyFileToDirectory(resFile, distFile); 
        } 
    } 

   
    /** 
     * 删除一个文件或者目录 
     * @param targetPath     文件或者目录路径 
     * @IOException 当操作发生异常时抛出 
     */
    public static void deleteFile(String targetPath) throws IOException { 
        File targetFile = new File(targetPath); 
        if (targetFile.isDirectory()) { 
            FileUtils.deleteDirectory(targetFile); 
        } else if (targetFile.isFile()) { 
            targetFile.delete(); 
        } 
    } 

    /** 
     * 将字符串写入指定文件(当指定的父路径中文件夹不存在时,会最大限度去创建,以保证保存成功!) 
     *  
     * @param res         原字符串 
     * @param filePath    文件路径 
     * @return 成功标记 
     * @throws IOException
     */
    public static boolean string2File(String res, String filePath) throws IOException { 
        boolean flag = true; 
        BufferedReader bufferedReader = null; 
        BufferedWriter bufferedWriter = null; 
        try { 
            File distFile = new File(filePath); 
            if (!distFile.getParentFile().exists()) {// 不存在时创建 
                distFile.getParentFile().mkdirs(); 
            } 
            bufferedReader = new BufferedReader(new StringReader(res)); 
            bufferedWriter = new BufferedWriter(new FileWriter(distFile)); 
            char buf[] = new char[1024]; // 字符缓冲区 
            int len; 
            while ((len = bufferedReader.read(buf)) != -1) { 
                bufferedWriter.write(buf, 0, len); 
            } 
            bufferedWriter.flush(); 
            bufferedReader.close(); 
            bufferedWriter.close(); 
        } catch (IOException e) { 
            flag = false; 
            throw e;
        } 
        return flag; 
    } 

    /** 
     * 取得指定文件内容
     *  
     * @param res         原字符串 
     * @param filePath    文件路径 
     * @return 成功标记 
     * @throws IOException
     */
    public static List<String> getContentFromFile(String filePath) throws IOException { 
     List<String> lists = null;
     try { 
      if(!(new File(filePath).exists())){
       return new ArrayList<String>();
      }
      lists = FileUtils.readLines(new File(filePath), Charset.defaultCharset());
     } catch (IOException e) { 
       throw e;
     } 
     return lists; 
    } 

    /**
     * 给指定文件追加内容
     * @param filePath
     * @param contents
     */
    public static void addContent(String filePath, List<String> contents) throws IOException {
      try {
   FileUtils.writeLines(new File(filePath), contents);
  } catch (IOException e) {
    throw e;
  }
    }
}

时间: 2024-09-15 13:32:57

commons io文件操作示例分享_java的相关文章

java复制文件和java移动文件的示例分享_java

复制代码 代码如下: package com.famous.dark.util; import java.io.File;import java.io.FileFilter; public class MyFileFilter implements FileFilter {  public boolean accept(File file) {  String fileName = file.getName().toLowerCase();  if (fileName.endsWith(".ja

apache ant进行zip解压缩操作示例分享_java

需要导入ant.jar包,apache网站(http://ant.apache.org/bindownload.cgi)下载即可. 复制代码 代码如下: import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOEx

python读写文件操作示例程序

 日常操作中,少不了文本处理,如程序输入数据准备,python凭借其简洁优雅的语法,在文本处理上比C++等编译型语言开发效率高出一大截,下面看代码 文件操作示例     复制代码 代码如下: #输入文件 f = open(r'D:Python27pro123.bak')  #输出文件 fw = open(r'D:Python27pro123e.bak','w') #按行读出所有文本 lines = f.readlines() num = -1 for line in lines:     str

python读写文件操作示例程序_python

文件操作示例 复制代码 代码如下: #输入文件f = open(r'D:\Python27\pro\123.bak') #输出文件fw = open(r'D:\Python27\pro\123e.bak','w')#按行读出所有文本lines = f.readlines()num = -1for line in lines:    str = '@SES/%i/' %num    line = line.replace('@SES/1/',str)    num = num + 1    #写入

Linux下C编程-----IO/文件操作 模拟linux ls程序显示文件系统树形结构(2)

Linux下的IO/文件操作练习,知识虽然简单 但是往往基础容易被忽略,偶尔的练习是有必要的.        练习printf /************************************************************************* > File Name: printf.c > Author: > Mail: > Created Time: Wed 11 Feb 2015 01:08:15 AM PST ****************

Apache Commons fileUpload文件上传多个示例分享_java

本文通过实例来介绍如何使用commons-fileupload.jar,Apache的commons-fileupload.jar可方便的实现文件的上传功能,具体内容如下 将Apache的commons-fileupload.jar放在应用程序的WEB-INF\lib下,即可使用.下面举例介绍如何使用它的文件上传功能. 所使用的fileUpload版本为1.2,环境为Eclipse3.3+MyEclipse6.0.FileUpload 是基于 Commons IO的,所以在进入项目前先确定Com

java使用ftp上传文件示例分享_java

复制代码 代码如下: import java.io.ByteArrayInputStream;  import java.io.FileOutputStream;  import java.io.IOException;  import java.net.SocketException;  import java.text.SimpleDateFormat;  import java.util.Date;  import org.apache.commons.io.IOUtils;  impor

php无限遍历文件夹示例分享

 这篇文章主要介绍了php无限遍历文件夹示例,需要的朋友可以参考下 最近在能php目录操作,搞了一个目录无限遍历:   使用的函数有:   isset()判断某个变量是否定义   chdir() 将当前目录改变为指定的目录.   opendi()打开目录.   readdir()读取目录.   getcwd()获取当前目录.   还用到了for  if  GET传值 大概就这些东东:   下面是代码:   代码如下: <?php if(isset($_GET['id']))//判断是否传值 {

java开发之读写txt文件操作的实现_java

项目结构: 开发之读写txt文件操作的实现_java-java实现读写分离"> 运行效果: ======================================================== 下面是代码部分: ======================================================== /Text/src/com/b510/txt/MyFile.java 复制代码 代码如下: package com.b510.txt;  import ja