--------------siwuxie095

 
 

 
 

 
 

 
 

 
 

 
 

首先到 Apache官网 下载相关的库文件

 
 

Apache官网:http://www.apache.org/

 
 

 
 

在官网页面的最下方是Apache所支持的所有项目列表(APACHE PROJECT LIST)

 
 

找到
Commons,点击进入,在页面左侧选择 Components,

里面是 Commons 所包含的所有可用的库,在其中找到 IO,

这是一个 IO 的工具集合,点击进入,选择 Download,下载

Apache Commons IO 2.5 版本(截止 2017/3/27 最新版本)

 
 

页面链接:http://commons.apache.org/proper/commons-io/download_io.cgi

 
 

 

 
 

 
 

commons-io-2.5-bin.zip
解压后一览:

 
 

 
 

 
 

 
 

 
 

 
 

工程名:TestApacheIO

包名:com.siwuxie095.apacheio

类名:TestFileUtils.java

 
 

 
 

手动在工程上创建文件:

在工程名:TestApacheIO 上,右键->New->Untitled Text File,

输入文本,保存路径选择 TestApacheIO,命名为 text.txt

 
 

text.txt 的内容:

 
 

 
 

 
 

 
 

打开资源管理器,在工程 TestApacheIO 文件夹下,创建一个文件夹:lib,

在其中放入:commons-io-2.5.jar(这是为了将这个库被当前的工程所引用)

 
 

 
 

工程结构目录如下:

 
 

 
 

 
 

 
 

选择
commons-io-2.5.jar,右键->Build Path->Add to Build Path

(这样就能在代码中使用当前库所提供的功能)

 
 

 
 

此时,工程结构目录一览:

 
 

 
 

 
 

 
 

核心的包是
org.apache.commons.io,提供了很多操作 IO 或 文件 的类,

常用的有:CopyUtils、FileUtils、IOUtils

 
 

 
 

 
 

 
 

 
 

代码:

 
 

package com.siwuxie095.apacheio;

 
 

import java.io.File;

import java.io.IOException;

 
 

import org.apache.commons.io.FileUtils;

 
 

public class TestFileUtils {

/**

* 使用外部库来操作 IO 与
文件
相当方便

* 提供了很多操作方法和API

* @param args

*/

public static
void main(String[] args) {

 

//创建一个文件对象

File file=new File("text.txt");

 

//需要将text.txt的内容复制给text_new.txt

File filex=new File("text_new.txt");

 

try {

 

//FileUtils 不用为其创建实例,直接使用类调用方法即可

//这里测试将文件读取为字符串的方法,传入文件对象并指定字符串的编码

//返回一个String类型,创建一个String接收返回值

//有异常抛出,需要用 try catch 捕获

String input=FileUtils.readFileToString(file, "UTF-8");

 

//直接打印即可,这比使用字符型的输入流来读取方便的多

System.out.println(input);

 

//直接传入原始文件对象和目标文件对象,完成复制

FileUtils.copyFile(file, filex);

 

} catch (IOException e) {

e.printStackTrace();

}

 

}

 
 

}

 
 

 
 

运行一览:

 
 

 
 

 
 

 
 

text_new.txt 的内容:

 
 

 
 

 
 

 
 

运行后,工程结构目录一览:

 
 

 
 

 
 

 
 

 
 

 
 

 
 

【made by siwuxie095】

使用Apache IO库操作IO与文件的更多相关文章

  1. 用 python 来操作 docx, xlsx 格式文件(二)(使用 docx 库操作 docx 格式文件

    docx 库 文章结构: 一.docx 基本用,创建 docx 文件并添加数据 二.深入理解文本格式(format),并设置所格式属性(attribute) 三.深入理解样式(styles),以及如何 ...

  2. 用 python 来操作 docx, xlsx 格式文件(一)(使用 xlsxwriter 库操作xlsx格式文件)

    需要从数据库读取日志生成相应的 docx,xlsx 文件做相应的记录 所以自然要用到docx, xlsxwriter 库 但是这些库的应用场景非常广泛,任何需要对 word,excel 文件执行重复性 ...

  3. 文件IO函数和标准IO库的区别

    摘自 http://blog.chinaunix.net/uid-26565142-id-3051729.html 1,文件IO函数,在Unix中,有如下5个:open,read,write,lsee ...

  4. IO库----IO类,文件输入输出,string流

    一.IO类 1.IO库类型和头文件表: 头文件 类型 iostream istream,wistream 从流读取数据 ostream,wostream 向流写入数据 iostream,wiostre ...

  5. [APUE]标准IO库(上)

    一.流和FILE对象 系统IO都是针对文件描述符,当打开一个文件时,即返回一个文件描述符,然后用该文件描述符来进行下面的操作,而对于标准IO库,它们的操作则是围绕流(stream)进行的. 当打开一个 ...

  6. 标准模板库——IO库

    IO库设施: . istream(输入流)类型,提供输入操作. . ostream(输出流)类型,提供输出操作. . cin,一个istream对象,从标准输入读取数据. . cout,一个ostre ...

  7. IO库

    IO类 C++语言不直接处理出入输出,而是通过一族定义在标准库中的类型来处理IO.这些类型支持从设备读取数据.向设备写入数据的IO操作,设备可以是文件 .控制台窗口 等.还有一些类型允许内存IO ,即 ...

  8. C++的IO处理中的头文件以及类理解(1)

    C++语言不直接处理输入输出,而是通过一簇定义在标准库中的类型来处理IO.这些类型支持从设备读取数据.向设备写入数据的IO操作,设备可以是文件.控制台窗口等,还有一些类型允许内存IO,即,从strin ...

  9. IO相关1(io类/流状态)

    IO类: iostream 定义了用于读写流的基本类型,fstream 定义了读写命名文件的类型,sstream 定义了读写内存 string 对象的类型. IO 库类型和头文件: 头文件 类型 io ...

随机推荐

  1. Linux下windows中文文本文件乱码问题

    table of content: 乱码问题 用gedit选择正确的字符编码打开文件 文件转码 总结 §乱码 Fedora安装时默认用UTF-8字符编码方式, 这么做有国际化的好处(和很多用utf-8 ...

  2. git clone all branch and create a empty branch

    /******************************************************************** * git clone all branch and cre ...

  3. 十五、python沉淀之路--eval()的用法

    一.eval函数 python eval() 函数的功能:将字符串str当成有效的表达式来求值并返回计算结果. 语法:eval(source[, globals[, locals]]) -> v ...

  4. RK3288 dts文件中背光配置参数

    backlight { // 设备名(用于匹配) compatible = "pwm-backlight"; // pwm编号 通道 频率(ns) pwms = <& ...

  5. 在Activity中使用Menu

    1.右击res-->New-->Directory输入文件名menu,在此文件夹下新建main菜单文件:右击menu-->New-->Menu resource file 2. ...

  6. CCPC2018-湖南全国邀请赛 K 2018

    K.2018 题目描述 Given a, b, c, d , find out the number of pairs of integers ( x, y ) where a ≤ x ≤ b, c ...

  7. [置顶] STM32 输入捕获的脉冲宽度及频率计算

    输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能.以下是对脉冲宽度及频率的计算. 1.脉冲宽度 如下图所示,采集该高电平脉冲 ...

  8. Bash脚本编程总结

    bash脚本编程之用户交互: read [option]… [name …]  -p ‘PROMPT’  -t TIMEOUT bash -n /path/to/some_script  检测脚本中的 ...

  9. C# 面向切面编程--监控日志记录方案

    背景:现在公司整体在做监控平台,要求把各个部分的细节都记录下来,在前台页面上有所显示,所以现在需要做的就是一个监控日志的记录工作,今天讲的就是渲染监控日志的例子. 现状:当前的渲染程序没有为监控日志记 ...

  10. Linux - rpm 软件包管理

    rpm 是 Red-Hat Package Manager(rpm 软件包管理器)的缩写 rpm 的命名规则: 第一部分为 rpm 软件包的名称,第二部分是版本号,第三部分是版本发布次数,第四部分是软 ...