使用org.apache.commons.io.FileUtils,IOUtils工具类操作文件

转载自 使用org.apache.commons.io.FileUtils,IOUtils;工具类操作文件

File src = new File("G:/2012/portal/login.jsp");  
File tar = new File("G:/2012/portal/loginZs.jsp");  
File tarDir = new File("G:/2012/portal/center/");  FileUtils.copyFile(src,tar);//复制文件  
FileUtils.copyFileToDirectory(src, tarDir);//复制文件到指定文件夹  

 

File src = new File("G:/2012/portal/login.jsp");  
File tar = new File("G:/2012/portal/loginZs.jsp");  
File tarDir = new File("G:/2012/portal/center/");  FileUtils.copyFile(src,tar);//复制文件  
FileUtils.copyFileToDirectory(src, tarDir);//复制文件到指定文件夹

 

Commons IO是apache的一个开源的工具包,封装了IO操作的相关类,使用Commons IO可以很方便的读写文件,

 

FileUtils 中提供了许多设计文件操作的 已封装好的方法。

IOUtils 则是提供了读写文件的方法。

 

读取文件:

// by FileUtils    
List<String> lines = FileUtils.readLines(file, "UTF-8");    // by IOUtils    
List<String> lines = IOUtils.readLines(new FileInputStream(file), "UTF-8"); 

写入文件:

// by FileUtils    
FileUtils.writeLines(file, "UTF-8", lines);    // by IOUtils    
IOUtils.writeLines(lines, null, new FileOutputStream(file));    
public class IoTest {    /**  * @param args  */    public static void main(String[] args) throws Exception {    // 输入流复制到 输出流   Writer write = new FileWriter("c:\\kk.dat");    InputStream ins = new FileInputStream(new File("c:\\text.txt"));    IOUtils.copy(ins, write);    write.close();    ins.close();    //文本写入指定文件   String name = "my name is panxiuyan";    File file =  new File("c:\\name.txt");    FileUtils.writeStringToFile(file, name);    //将输入流转换成文本   URL url = new URL("http://www.dimurmill.com");    InputStream ins = url.openStream();    String contents = IOUtils.toString(ins,"UTF-8");    System.out.println( "Slashdot: " + contents );    //关闭相关流  File file = null;    InputStream ins = null;    try{    file = new File("C:\\Test.java");    ins = new FileInputStream(file);    }catch(Exception e){    e.printStackTrace();    }finally{    IOUtils.closeQuietly(ins);    }    }  //文件复制  File srcfile = new File("c:\\Test.java");      File destfile = new File("c:\\Test.java.bak");      FileUtils.copyFile(srcfile, destfile);      //文件复制指定的目录   File srcfile = new File("c:\\Test.java");      File destDir = new File("D:\\");    FileUtils.copyFileToDirectory(srcfile, destDir);    //网络流保存为文件  URL url = new URL("http://www.163.com");     File file = new File("c:\\163.html");        FileUtils.copyURLToFile(url, file);    //文件目录操作   File dir = new File("c:\\test");    FileUtils.cleanDirectory(dir);//清空目录下的文件    FileUtils.deleteDirectory(dir);//删除目录和目录下的文件   //目录大小    long size = FileUtils.sizeOfDirectory(dir);    //目录操作  File testFile = new File( "testFile.txt" );    //如果不存在,新建    // 如果存在,修改文件修改时间    FileUtils.touch( testFile );    //记录流的读取写入字节数   File test = new File( "test.dat" );    //输出流的统计    CountingOutputStream countStream = null;    //输入流的统计    //CountingInputStream countStream = null;    try {    FileOutputStream fos = new FileOutputStream( test );            countStream = new CountingOutputStream( fos );    countStream.write( "Hello".getBytes( ) );    } catch( IOException ioe ) {    System.out.println( "Error writing bytes to file." );    } finally {         IOUtils.closeQuietly( countStream );      }    if( countStream != null ) {    int bytesWritten = countStream.getCount( );    System.out.println( "Wrote " + bytesWritten + " bytes to test.dat" );    }    //相同的内容写入不同的文本   File test1 = new File("split1.txt");    File test2 = new File("split2.txt");    OutputStream outStream = null;    try {    FileOutputStream fos1 = new FileOutputStream( test1 );    FileOutputStream fos2 = new FileOutputStream( test2 );    //包含不同的文本    outStream = new TeeOutputStream( fos1, fos2 );    outStream.write( "One Two Three, Test".getBytes( ) );    outStream.flush( );         } catch( IOException ioe ) {        System.out.println( "Error writing to split output stream" );           } finally {             IOUtils.closeQuietly( outStream );              }   }    }    

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/327154.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

写给新手的WebAPI实践

此篇是写给新手的Demo&#xff0c;用于参考和借鉴&#xff0c;用于发散思路。老鸟可以忽略了。 自己经常有这种情况&#xff0c;遇到一个新东西或难题&#xff0c;在了解和解决之前总是说“等搞定了一定要写篇文章记录下来”&#xff0c;但是当掌握了之后&#xff0c;就感觉好简…

用limit 实现java的简单分页

https://blog.csdn.net/xinyuezitang/article/details/84324359 用limit 实现java的简单分页 xinyuezitang 2018-11-21 16:01:13 4447 收藏 9 分类专栏&#xff1a; Java 小Demo 文章标签&#xff1a; 分页 limit mysql 实现java分页 版权 一 mysql 中limit 用法 select …

Map集合的遍历

COPY/*** Map接口的使用* 特点&#xff1a;1.存储键值对 2.键不能重复&#xff0c;值可以重复 3.无序*/ public class Demo1 {public static void main(String[] args) {Map<String,Integer> mapnew HashMap<String, Integer>();//1.添加元素map.put("tang&qu…

Servlet使用适配器模式进行增删改查案例(IBaseDaoUtil.java)

/*** */ package org.dao;import java.util.List;/*** * * 项目名称&#xff1a;test_BaseDao * 类名称&#xff1a;IBaseDaoUtil * 类描述&#xff1a; 公共接口 * 创建人&#xff1a;Mu Xiongxiong * 创建时间&#xff1a;2017-9-10 上午11:02:57 * 修改人…

Mybatis使用IN语句查询

https://blog.csdn.net/u011781521/article/details/79669180 Mybatis使用IN语句查询 lfendo 2018-03-23 16:45:03 201525 收藏 140 分类专栏&#xff1a; MyBatis 文章标签&#xff1a; mybatis JAVA sql 版权 一、简介 在SQL语法中如果我们想使用in的话直接可以像如下一…

IdentityServer4 实现 OpenID Connect 和 OAuth 2.0

关于 OAuth 2.0 的相关内容&#xff0c;点击查看&#xff1a;ASP.NET WebApi OWIN 实现 OAuth 2.0 OpenID 是一个去中心化的网上身份认证系统。对于支持 OpenID 的网站&#xff0c;用户不需要记住像用户名和密码这样的传统验证标记。取而代之的是&#xff0c;他们只需要预先在一…

Java动态代理机制详解(JDK 和CGLIB,Javassist,ASM)

转载自 Java动态代理机制详解&#xff08;JDK 和CGLIB&#xff0c;Javassist&#xff0c;ASM&#xff09; class文件简介及加载 Java编译器编译好Java文件之后&#xff0c;产生.class 文件在磁盘中。这种class文件是二进制文件&#xff0c;内容是只有JVM虚拟机能够识别的机器码…

Servlet使用适配器模式进行增删改查案例(IDeptDao.java和IEmpDao.java)

这两个接口进行放置emp和dept单独接口 /*** */ package org.dao;import org.entity.Dept;/*** * * 项目名称&#xff1a;test_BaseDao * 类名称&#xff1a;IDeptDao * 类描述&#xff1a; 部门的私有接口&#xff0c;此接口专属于部门独立的功能公共的都在IBaseDaoUt…

彻底理解JAVA动态代理

转载自 彻底理解JAVA动态代理 代理设计模式 定义&#xff1a;为其他对象提供一种代理以控制对这个对象的访问。 代理模式的结构如下图所示。 动态代理使用 java动态代理机制以巧妙的方式实现了代理模式的设计理念。 代理模式示例代码 public interface Subject { pu…

docker 安装redis 挂载到宿主机

1.首先去redis获取对应版本的配置文件redis.conf&#xff1a; http://download.redis.io/releases/ 我选择的是 6.0.9 解压以后 有一个redis.conf 2.将 bind 127.0.0.1注释&#xff0c;daemonize yes注释掉&#xff0c;如果需要redis密码则找到 requirepass 并填上你的密码 …

Servlet使用适配器模式进行增删改查案例(BaseDaoUtilImpl.java)

/*** */ package org.dao.impl;import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List;import org.dao.BaseDao; import org.entity.Dept; import org.entity.Emp;/*** * * 项目名称&#xff1a;test_BaseDao …

搭建consul 集群

上图是官网提供的一个事例系统图&#xff0c;图中的Server是consul服务端高可用集群&#xff0c;Client是consul客户端。consul客户端不保存数据&#xff0c;客户端将接收到的请求转发给响应的Server端。Server之间通过局域网或广域网通信实现数据一致性。每个Server或Client都…

Java类加载的那些事

转载自 Java类加载的那些事 前言 Java源代码被编译成class字节码&#xff0c;最终需要加载到虚拟机中才能运行。整个生命周期包括&#xff1a;加载、验证、准备、解析、初始化、使用和卸载7个阶段。 加载 1、通过一个类的全限定名获取描述此类的二进制字节流&#xff1b; …

JAVA集合(笔记)

集合简介 概念&#xff1a;对象的容器&#xff0c;定义了对多个对象进项操作的的常用方法。可实现数组的功能。和数组的区别&#xff1a; 数组长度固定&#xff0c;集合长度不固定。数组可以存储基本类型和引用类型&#xff0c;集合只能存储引用类型。 位置&#xff1a; jav…

部署kafka kafka的service容器和zookeeper kafka客户端 Elasticsearch的客户端

创建network docker network create -d overlay --attachable loc_net docker stack up -c kafka.yml kafka docker stack up -c kafdrop.yml kafdrop docker stack up -c els.yml els docker stack ls docker service ls 查看service的启动错误原因 docker service ps d…

Servlet使用适配器模式进行增删改查案例(DeptDaoImpl.java)

/*** */ package org.dao.impl;import java.util.List;import org.dao.IDeptDao; import org.entity.Dept;/*** * * 项目名称&#xff1a;test_BaseDao * 类名称&#xff1a;DeptDaoImpl * 类描述&#xff1a; 部门的实现类* 创建人&#xff1a;Mu Xiongxiong * 创建…

公司技术需求备忘录

业务现状领导要求 1) 部署环境要求: 公有云&#xff0c;私有云&#xff0c;原有院内系统。三套环境&#xff0c;兼容部署&#xff0c;一套代码多环境支持。2) 数据库要求&#xff1a;sqlserver&#xff0c;orcale&#xff0c;mysql要兼容&#xff0c;一套代码多库运行。3) 性能…

equals 和 hashCode 到底有什么联系?一文告诉你

转载自 equals 和 hashCode 到底有什么联系&#xff1f;一文告诉你 写在前面 Java的基类Object提供了一些方法&#xff0c;其中equals()方法用于判断两个对象是否相等&#xff0c;hashCode()方法用于计算对象的哈希码。equals()和hashCode()都不是final方法&#xff0c;都可…

如何将Excel的单元格设置成下拉选项?-excel设置下拉菜单

https://www.qiaoshan022.cn/excel/excel14169.html 如何将Excel的单元格设置成下拉选项&#xff1f;-excel设置下拉菜单 作者&#xff1a;乔山办公网日期&#xff1a;2019-09-24 21:13:23 返回目录&#xff1a;excel表格制作 在用Excel表录入数据时&#xff0c;有时需要限制…