apache.commons.io.FileUtils的常用操作
至于相关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的常用操作的更多相关文章
- 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 ...
- 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 ...
- org.apache.commons.io——FileUtils学习笔记
FileUtils类的应用 1.写入一个文件: 2.从文件中读取: 3.创建一个文件夹,包括文件夹: 4.复制文件和文件夹: 5.删除文件和文件夹: 6.从URL地址中获取文件: 7.通过文件过滤器和 ...
- java.lang.NoSuchMethodError: org.apache.commons.io.FileUtils.copyInputStreamToFile(Ljava/io/InputStream;Ljava/io/File;)V
昨天用的好好的,今天就不行了 也懒得搞 具体原因就是引用的问题 找了个能用的pom 直接贴过去完事儿
- Apache Commons IO之FileUtils的常用方法
Apache Commons IO 在学习io流的时候研究(翻译)了一下这个,只有FileUtils的某些方法,并不全面,还请谅解 org.apache.commons.io 这个包下定义了基于 st ...
- Java (三)APACHE Commons IO 常规操作
上一篇:Java (二)基于Eclipse配置Commons IO的环境 例1:查看文件.文件夹的长度(大小). 1 import java.io.File; 2 3 import org.apach ...
- Apache Commons IO入门教程(转)
Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...
- [转]Apache Commons IO入门教程
Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的 ...
- .apache.commons.io 源代码学习(一)
java的初学者,准备通读各种高水平源代码,提升能力. 为了避免自己的惰性,写博客. 版本:2.5 开发平台:netbeans. 今天是第一天,网上先看个例子:http://www.importnew ...
随机推荐
- Vuex 单状态库 与 多模块状态库
之前对 Vuex 进行了简单的了解.近期在做 Vue 项目的同时重新学习了 Vuex .本篇博文主要总结一下 Vuex 单状态库和多模块 modules 的两类使用场景. 本篇所有代码是基于 Vue- ...
- DNS分离解析IPV6与IPV4用户
IPV6改造中经常会遇到,网站使用了CDN,但是CDN厂商还不支持IPV6的情况,而AAAA.A.CNAME记录互相冲突,想实现IPV6用户得到AAAA记录,IPV4用户得到CNAME记录的需求. 解 ...
- React Native移动开发实战-2-如何调试React Native项目
在实际开发中,还有一个影响开发效率的重要因素:调试. 在1.4.3节中已经介绍了Enable Live Debugger的使用.本节来介绍另一个非常重要的调试选项:Debug JSRemotely选项 ...
- Mac环境搭建以太坊私有链
原文地址: 石匠的blog 为了测试以太坊智能合约,最方便的是在本地搭建一个以太坊私有链.在mac上搭建环境主要需要以下步骤. geth安装 geth是go-ethereum的简写,是一个用go语言编 ...
- 3.控制hive map reduce个数
参考: https://blog.csdn.net/wuliusir/article/details/45010129 https://blog.csdn.net/zhong_han_jun/arti ...
- java第二次试验报告
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:郭皓 学号:20135327 成绩: 指导 ...
- 预备作业02 : 体会做中学(Learning By Doing)
1.你有什么技能比大多人(超过班级90%以上)更好? 我认为我是一个比较爱摄影和绘画的人,虽然说说不上技术精湛,但还是能拿出手的. 2.针对这个技能的获取你有什么成功的经验? 接触摄影和绘画都是因为喜 ...
- 20145214《网络攻防》逆向及Bof基础实践
20145214<网络攻防>逆向及Bof基础实践 实践说明 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何 ...
- 【DL.AI】《Structuring Machine Learning Projects》笔记
一.改进模型的几个方法 Collect more data Collect more diverse training set Train algorithm longer with gradient ...
- 404 Note Found 团队会议纪要
目录 团队会议 会议纪要1 会议纪要2 会议纪要3 会议纪要4 会议纪要5 会议纪要6 团队会议 会议纪要1 会议纪要2 会议纪要3 会议纪要4 会议纪要5 会议纪要6