至于相关jar包可以到官网获取 http://commons.apache.org/downloads/index.html

package com.wz.apache.fileUtils;

import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils; import javax.print.attribute.standard.Copies;
import java.io.*;
import java.net.URL;
import java.util.List;
import java.util.Scanner; /**
* 测试io工具包
* 本人英语水平不过关,简单理解下
* (注释的第一行是测试的方法,第二行是官方文档的解释,第三行是我测试做的结论)
* @author WZLOVE
* @create 2018-04-30 12:30
*/
public class MainTest { public static void main(String[] args) {
String path = "H:\\javaTest\\iotest";
String path1 = "H:\\javaTest\\iotest\\1.txt";
String path2 = "H:\\javaTest\\iotest\\2.txt";
String path3 = "H:\\MyTest";
String path4 = "H:\\MyTest\\test";
File file = new File(path);
File file1 = new File(path1);
File file2 = new File(path2);
File file3 = new File(path3);
File file4 = new File(path4);
FileUtils fu = new FileUtils(); // 复制操作 // cleanDirectory(File directory)
// Cleans a directory without deleting it.
// 删除该文件夹下的所有东西(如果该路径是文件或者路径不存在是会报java.lang.IllegalArgumentException异常)
try {
FileUtils.cleanDirectory(file);
System.out.println("删除成功");
} catch (IOException e) {
e.printStackTrace();
} // contentEquals(File file1, File file2)
// Compares the contents of two files to determine if they are equal or not.
// 测试两个文件的内容相不相同
try {
System.out.println(FileUtils.contentEquals(file1,file2));
} catch (IOException e) {
e.printStackTrace();
} // copyDirectory(File srcDir, File destDir)
// Copies a whole directory to a new location preserving the file dates.
// 复制第一个参数的文件夹下的所有内容复制到第二个参数的文件夹下
try {
FileUtils.copyDirectory(file,file3);
System.out.println("复制成功");
} catch (IOException e) {
e.printStackTrace();
} // copyDirectoryToDirectory(File srcDir, File destDir)
// Copies a directory to within another directory preserving the file dates.
// 将第一个参数的整个文件夹(即iotest文件夹)复制到第二个路径下
try {
FileUtils.copyDirectoryToDirectory(file, file3);
System.out.println("复制成功");
} catch (IOException e) {
e.printStackTrace();
} // copyFile(File srcFile, File destFile)
// Copies a file to a new location preserving the file date.
// 将一个文件的内容复制到另一个文件中
try {
FileUtils.copyFile(file1, file2);
System.out.println("复制成功");
} catch (IOException e) {
e.printStackTrace();
} // copyFileToDirectory(File srcFile, File destDir)
// Copies a file to a directory preserving the file date.
// 将一个文件复制到另一个文件夹下(不做测试了) System.out.println("=================================================="); // 读写操作 // readFileToString(File file, String encoding)
// Reads the contents of a file into a String.
// 读取文件内容返回String,原样输出
try {
String str = FileUtils.readFileToString(file1, "UTF-8");
System.out.println(str);
} catch (IOException e) {
e.printStackTrace();
} // readLines(File file, String encoding)
// Reads the contents of a file line by line to a List of Strings.
// 返回String集合
try {
List<String> strList = FileUtils.readLines(file1, "UTF-8");
for (String s : strList) {
System.out.println(s);
}
System.out.println(strList.size());
} catch (IOException e) {
e.printStackTrace();
} // writeStringToFile(File file, String data, String encoding)
// Writes a String to a file creating the file if it does not exist.
// 将String数据写入文件(只能输入一行,如果后续还有输入,将覆盖前面的内容,下一个方法将是追加)
try {
Scanner in = new Scanner(System.in);
while (true){
System.out.println("请输入内容(结束请输入break):");
String str = in.nextLine();
if(!str.equals("break")){
FileUtils.writeStringToFile(file2, str, "UTF-8");
} else {
break;
}
}
} catch (IOException e) {
e.printStackTrace();
} // writeStringToFile(File file, String data, String encoding, boolean append)
// Writes a String to a file creating the file if it does not exist.
// 将String数据写入文件,多个string数据就追加(记住一点文件里不会换行)
try {
Scanner in = new Scanner(System.in);
while (true){
System.out.println("请输入内容(结束请输入break):");
String str = in.nextLine();
if(!str.equals("break")){
FileUtils.writeStringToFile(file2, str, "UTF-8",true);
} else {
break;
}
}
} catch (IOException e) {
e.printStackTrace();
} System.out.println("============================================");
// 网络相关 // copyURLToFile(URL source, File destination)
// Copies bytes from the URL source to a file destination.
// 获取一个网页的源代码,写入本地文件,还可以向本地写图片的等等
// 下面是两个例子,一个获取页面,一个获取图片(如果文件不存在会自动创建)
try {
FileUtils.copyURLToFile(new URL("https://blog.csdn.net/lixin2302007/article/details/78354929"),
new File("H:\\javaTest\\iotest\\test.html"));
System.out.println("复制完毕");
} catch (IOException e) {
e.printStackTrace();
}
// 写图片
try {
FileUtils.copyURLToFile(new URL("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1525082437668&di=18d455af6f3ffedc1f4d2e022cfe4af5&imgtype=0&src=http%3A%2F%2Fpic.eastlady.cn%2Fuploads%2Ftp%2F201705%2F9999%2F7e03b578dc.jpg"),
new File("H:\\javaTest\\iotest\\1.jpg"));
System.out.println("复制完毕");
} catch (IOException e) {
e.printStackTrace();
} } }

apache.commons.io.FileUtils的常用操作的更多相关文章

  1. Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.FileUtils

    1.错误叙述性说明 警告: Could not create JarEntryRevision for [jar:file:/D:/MyEclipse/apache-tomcat-7.0.53/web ...

  2. java.lang.NoSuchMethodError: org.apache.commons.io.FileUtils.getTempDirectory()Ljava/io/File;

    我出现这个问题的原因是使用ueditor上传图片 如果不是commons.io的jar包缺失,就是jar包有冲突 另外:最新的ueditor(1.4.3.1)使用的是commons-io-2.4.ja ...

  3. org.apache.commons.io——FileUtils学习笔记

    FileUtils类的应用 1.写入一个文件: 2.从文件中读取: 3.创建一个文件夹,包括文件夹: 4.复制文件和文件夹: 5.删除文件和文件夹: 6.从URL地址中获取文件: 7.通过文件过滤器和 ...

  4. java.lang.NoSuchMethodError: org.apache.commons.io.FileUtils.copyInputStreamToFile(Ljava/io/InputStream;Ljava/io/File;)V

    昨天用的好好的,今天就不行了 也懒得搞 具体原因就是引用的问题 找了个能用的pom 直接贴过去完事儿

  5. Apache Commons IO之FileUtils的常用方法

    Apache Commons IO 在学习io流的时候研究(翻译)了一下这个,只有FileUtils的某些方法,并不全面,还请谅解 org.apache.commons.io 这个包下定义了基于 st ...

  6. Java (三)APACHE Commons IO 常规操作

    上一篇:Java (二)基于Eclipse配置Commons IO的环境 例1:查看文件.文件夹的长度(大小). 1 import java.io.File; 2 3 import org.apach ...

  7. Apache Commons IO入门教程(转)

    Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...

  8. [转]Apache Commons IO入门教程

    Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...

  9. .apache.commons.io 源代码学习(一)

    java的初学者,准备通读各种高水平源代码,提升能力. 为了避免自己的惰性,写博客. 版本:2.5 开发平台:netbeans. 今天是第一天,网上先看个例子:http://www.importnew ...

随机推荐

  1. anaconda+pycharm的安装和应用

    至于anaconda的安装与pycharm的安装在此不做多说,主要说下遇到的问题. 问题描述: 安装anaconda后,pip下载的第三方库调用不到. 原因分析: anaconda自带的python3 ...

  2. GIT问题(二)——add报错

  3. Kubernetes集群部署篇( 一)

    K8S集群部署有几种方式:kubeadm.minikube和二进制包.前两者属于自动部署,简化部署操作,我们这里强烈推荐初学者使用二进制包部署,因为自动部署屏蔽了很多细节,使得对各个模块感知很少,非常 ...

  4. <React Native移动开发实战>-1-React Native的JSX解决方案

    JSX并不是一门新的开发语言,而是Facebook提出的语法方案:一种可以在JavaScript代码中直接书写HTML标签的语法糖,所以,JSX本质上还是JavaScript语言. 小知识:语法糖(S ...

  5. notion笔记

    不错的笔记应用, 模式新颖, 正在使用, 如有相同使用者可以入群交流 notion QQ群 725638123

  6. R软件中 文本分析安装包 Rjava 和 Rwordseg 傻瓜式安装方法四部曲

    这两天,由于要做一个文本分析的内容,所以搜索了一天R语言中的可以做文本分析的加载包,但是在安装包的过程,真是被虐千百遍,总是安装不成功.特此专门写一篇博文,把整个心塞史畅快的释放一下. ------- ...

  7. iOS 动态库、静态库 . framework 总结(2017.1.25 修改)

    修改于2017.1.25 使用Xcode Version 8.2.1 1.怎么创建.framework? 打开Xcode, 选择File ----> New ---> Project 选择 ...

  8. babel无法编译?

    ECMAScript 6(ES6)的发展或者说普及之快可以说是难以想象的,对很多人来说ECMAScript 5(ES5)都还普及呢.现代浏览器对ES6新特新或多或少的有些支持,但支持度不高,所以要想在 ...

  9. Final发布文案+美工

    团队名称:探路者 1蔺依铭:http://www.cnblogs.com/linym762/(组长) 2张恩聚:http://www.cnblogs.com/zej87/ 3米赫:http://www ...

  10. (第十周)Beta-2阶段成员贡献分

    项目名:食物链教学工具 组名:奋斗吧兄弟 组长:黄兴 组员:李俞寰.杜桥.栾骄阳.王东涵 个人贡献分=基础分+表现分 基础分=5*5*0.5/5=2.5 成员得分如下: 成员 基础分 表现分 个人贡献 ...