- 浏览: 2878798 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (1173)
- 名言警句 (5)
- 心情随笔 (50)
- 数据库 (57)
- Java基础 (241)
- J2EE框架 (91)
- 数据结构 (12)
- 程序设计 (21)
- WEB技术 (128)
- 网络日志 (12)
- IT资讯 (247)
- linux (64)
- solaris (2)
- 其它 (143)
- WebService (4)
- 日语学习 (2)
- 机器人 (5)
- Android (5)
- cgywin (3)
- Game (1)
- DWR (1)
- spring (8)
- canvas (1)
- Guava (3)
- Modbus (5)
- 测试 (6)
- mongodb (9)
- Quartz (2)
- Cron (1)
- windows (2)
- 持续集成 (1)
- bootstrap (3)
- 结对编程 (1)
- nodejs (1)
- Netty (1)
- 安全 (3)
- webstorm (2)
- sparkline (1)
- Job (1)
- git (3)
- Maven (3)
- knockout (5)
- jquery (1)
- bower (1)
- docker (1)
- confluence (4)
- wiki (1)
- GoogleMap (1)
- jekyll (10)
- ruby (2)
- npm (3)
- browserify (1)
- gulp (3)
- openwrt (1)
- discuz (3)
- 输入法 (1)
- JPA (1)
- eclipse (2)
- IntelliJ (1)
- css (1)
- 虚拟机 (1)
- 操作系统 (1)
- azkaban (2)
- scrum (1)
最新评论
-
pangxiea_:
你好, 想请问一下 Linux下 这么使用rxtxcomm 在 ...
使用Java进行串口通信 -
abababudei:
请教一下,这个您是怎么解决的:/dev/ttyS2enteri ...
Java应用程序的MODBUS通讯 -
xuniverse:
hannibal005 写道楼主,我问下 request.se ...
用javascript与java进行RSA加密与解密 -
atxkm:
找了一下午,终于找到了
gulp 拷贝文件时如何移除文件目录结构 -
kalogen:
gtczr 写道非常感谢,经过我自己的修改,已经完美实现。发出 ...
用javascript与java进行RSA加密与解密
Commons IO提供了org.apache.commons.io.CopyUtils类来将某个InputStream,Reader,byte[]数据或字符串的内容拷贝到OutputStream或Writer.
Java代码
- Writer writer = new FileWriter( "test.dat" );
- InputStream inputStream =
- getClass( ).getResourceAsStream("./test.resource" );
- CopyUtils.copy( inputStream, writer );
- writer.close( );
- inputStream.close( );
Writer writer = new FileWriter( "test.dat" ); InputStream inputStream = getClass( ).getResourceAsStream("./test.resource"); CopyUtils.copy( inputStream, writer ); writer.close( ); inputStream.close( );
如果需要把信息从Reader或InputStream拷贝到字符串中,请使用IOUtils.toString()方法.
Java代码
- InputStream inStream = url.openStream( );
- String contents = IOUtils.toString( inStream );
InputStream inStream = url.openStream( ); String contents = IOUtils.toString( inStream );
通过org.apache.commons.io.IOUtils,你可以很好地关闭某个InputStream,OutputStream,Reader或Writer,而不必担心null或IOException.
Java代码
- try {
- File file = new File( "test.dat" );
- reader = new FileReader( file );
- result = CopyUtils.toString( reader );
- } catch ( IOException ioe ) {
- System.out.println( "Unable to copy file test.dat to a String." );
- } finally {
- IOUtils.closeQuietly( reader );
- }
try { File file = new File( "test.dat" ); reader = new FileReader( file ); result = CopyUtils.toString( reader ); } catch( IOException ioe ) { System.out.println( "Unable to copy file test.dat to a String." ); } finally { IOUtils.closeQuietly( reader ); }
使用FileUtils.byteCountToDisplaySize()生成一个字符串,该字符串含有有一个近似的比较好理解的文件的相对大小的值.
Java代码
- File file = new File( "project.xml" );
- long bytes = file.length( );
- String display = FileUtils.byteCountToDisplaySize( bytes );
File file = new File("project.xml"); long bytes = file.length( ); String display = FileUtils.byteCountToDisplaySize( bytes );
如果需要将一个文件拷贝为另一个文件,或者需要将某个文件拷贝到某一个目录中,可以使用如下的代码:
拷贝为另一个文件:
Java代码
- File src = new File( "test.dat" );
- file dest = new File( "test.dat.bak" );
- FileUtils.copyFile( src, dest );
File src = new File( "test.dat" ); file dest = new File( "test.dat.bak" ); FileUtils.copyFile( src, dest );
拷贝到某一个目录:
Java代码
- File src = new File( "test.dat" );
- File dir = new File( "./temp" );
- FileUtils.copyFileToDirectory( src, dir );
File src = new File( "test.dat" ); File dir = new File( "./temp" ); FileUtils.copyFileToDirectory( src, dir );
使用Commons IO,你也可以很方便把字符串的内容写入文件中去,具体的过程不用怎么理会:
Java代码
- String string = "Blah blah blah" ;
- File dest = new File( "test.tmp" );
- FileUtils.writeStringToFile( dest, string);
String string = "Blah blah blah"; File dest = new File( "test.tmp" ); FileUtils.writeStringToFile( dest, string);
当然,有另外的一个功能,可以将URL的内容存入文件中去:
Java代码
- URL src = new URL( "http://www.nytimes.com" );
- File dest = new File( "times.html" );
- FileUtils.copyURLToFile( src, dest );
URL src = new URL( "http://www.nytimes.com" ); File dest = new File( "times.html" ); FileUtils.copyURLToFile( src, dest );
如果你需要删除一个目录下的所有内容(包括其目录),可以这样做:
Java代码
- File dir = new File( "temp" );
- FileUtils.deleteDirectory( dir );
File dir = new File( "temp" ); FileUtils.deleteDirectory( dir );
如果只想清空目录下所有内容,并不删除该目录,可以这样写:FileUtils.cleanDirectory( dir );
很简单地,可以得到一个目录的大小:
Java代码
- File dir = new File( "temp" );
- long dirSize = FileUtils.sizeOfDirectory( );
File dir = new File( "temp" ); long dirSize = FileUtils.sizeOfDirectory( );
如果你想得到某个目录下所有以.txt结尾的文件,可以如下这样做:
Java代码
- import java.io.FilenameFilter;
- import org.apache.commons.io.filefilter.SuffixFileFilter;
- import org.apache.commons.lang.ArrayUtils;
- File rootDir = new File( "." );
- FilenameFilter fileFilter = new SuffixFileFilter( ".txt" );
- String[] txtFiles = rootDir.list( fileFilter );
- System.out.println( ArrayUtils.toString( txtFiles ) );
import java.io.FilenameFilter; import org.apache.commons.io.filefilter.SuffixFileFilter; import org.apache.commons.lang.ArrayUtils; File rootDir = new File("."); FilenameFilter fileFilter = new SuffixFileFilter(".txt"); String[] txtFiles = rootDir.list( fileFilter ); System.out.println( ArrayUtils.toString( txtFiles ) );
举另一个例子,怎样列出目录中以.htm和.html结尾的文件
Java代码
- import org.apache.commons.io.filefilter.AndFileFilter;
- import org.apache.commons.io.filefilter.DirectoryFileFilter;
- import org.apache.commons.io.filefilter.IOFileFilter;
- import org.apache.commons.io.filefilter.NotFileFilter;
- import org.apache.commons.io.filefilter.OrFileFilter;
- import org.apache.commons.io.filefilter.SuffixFileFilter;
- import org.apache.commons.lang.ArrayUtils;
- IOFileFilter htmlFilter =
- new OrFileFilter( new SuffixFileFilter( "htm" ), new SuffixFileFilter( "html" ) ); //复合两个SuffixFileFilter
- IOFileFilter notDirectory = new NotFileFilter( DirectoryFileFilter.INSTANCE ); //拒绝选择目录
- FilenameFilter fileFilter = new AndFileFilter( htmlFilter, notDirectory );
- String[] htmlFiles = rootDir.list(fileFilter);
- System.out.println( ArrayUtils.toString( htmlFiles ));
import org.apache.commons.io.filefilter.AndFileFilter; import org.apache.commons.io.filefilter.DirectoryFileFilter; import org.apache.commons.io.filefilter.IOFileFilter; import org.apache.commons.io.filefilter.NotFileFilter; import org.apache.commons.io.filefilter.OrFileFilter; import org.apache.commons.io.filefilter.SuffixFileFilter; import org.apache.commons.lang.ArrayUtils; IOFileFilter htmlFilter = new OrFileFilter( new SuffixFileFilter("htm"),new SuffixFileFilter("html") ); //复合两个SuffixFileFilter IOFileFilter notDirectory = new NotFileFilter( DirectoryFileFilter.INSTANCE ); //拒绝选择目录 FilenameFilter fileFilter = new AndFileFilter( htmlFilter, notDirectory ); String[] htmlFiles = rootDir.list(fileFilter); System.out.println( ArrayUtils.toString( htmlFiles ));
注:文中代码来之<<Jakarta Commons Cookbook>>一书第十章
发表评论
-
高级Java程序员值得拥有的10本书
2015-05-04 07:24 816Java是时下最流行的编程语言之一。市面上也出现了适合初学者 ... -
深入理解java异常处理机制
2015-01-30 09:30 13351. 引子 try…catch…fi ... -
java 运行时参数设置
2015-01-07 09:13 872JVM的运行时参数: -Xms为执行单元内存的1/4, ... -
每个Java开发者都应该知道的5个JDK工具
2014-12-29 12:37 1147JDK是Java语言的软件开 ... -
使用双重锁判定可以大幅降低锁的征用
2014-12-29 12:30 755class ObjInstance { //单例 pri ... -
MAVEN Scope使用说明
2014-11-24 09:40 765在Maven的依赖管理中,经常会用到依赖的scope设置。这 ... -
Spring4 quartz job xml configuration
2014-11-11 09:46 14451. 定义job details public ... -
Add items into list in one line using guava
2014-11-10 10:54 728//@formatter:off fina ... -
配置动态读取(变化)文件 in Spring
2014-11-10 08:51 13291. 从环境变量中读取路径: <bean id=&q ... -
JAVA实现AES加密与解密
2014-11-04 15:34 665package com.eifesun.monitor.up ... -
Netty4.x分析
2014-07-31 11:06 1476官网定义: netty是一个异步、事件驱动的网络应用框架,用 ... -
Ways to sort lists of objects in Java based on multiple fields
2014-07-21 17:19 7801. the first way: Sorting wit ... -
how to parse a String to BigDecimal
2014-07-21 10:08 926private BigDecimal parsePrice( ... -
order list using google guava
2014-07-21 09:08 892Predicate<String> filter ... -
Java 读文件操作
2014-07-08 14:09 8941. only use java core, no exte ... -
怎样使Java 中测试按一定顺序执行
2014-03-10 11:27 1330@FixMethodOrder(MethodSorters. ... -
如何实现在当类初始化时,自动调动某个方法
2014-02-14 14:44 970有两种思路, 1. 将这个类实现为thread类 (or ... -
持续集成JenkinsAPI常见用法
2014-02-10 13:54 43jenkins(持续集成开源工具)提供了丰富的api接口,基 ... -
Sonar 安装与使用
2014-01-13 10:49 1738Sonar 是一个用于代码质量管理的开放平台。通过插件机制, ... -
源代码管理分析工具 Source Navigator的安装与使用
2014-01-13 09:51 1902Source-Navigator是原来redhat开发的一个 ...
相关推荐
赠送jar包:commons-io-2.8.0.jar; 赠送原API文档:commons-io-2.8.0-javadoc.jar; 赠送源代码:commons-io-2.8.0-sources.jar; 赠送Maven依赖信息文件:commons-io-2.8.0.pom; 包含翻译后的API文档:commons-io...
赠送jar包:commons-io-2.11.0.jar; 赠送原API文档:commons-io-2.11.0-javadoc.jar; 赠送源代码:commons-io-2.11.0-sources.jar; 赠送Maven依赖信息文件:commons-io-2.11.0.pom; 包含翻译后的API文档:...
赠送jar包:commons-io-2.7.jar; 赠送原API文档:commons-io-2.7-javadoc.jar; 赠送源代码:commons-io-2.7-sources.jar; 赠送Maven依赖信息文件:commons-io-2.7.pom; 包含翻译后的API文档:commons-io-2.7-...
赠送jar包:commons-io-1.3.2.jar; 赠送原API文档:commons-io-1.3.2-javadoc.jar; 赠送源代码:commons-io-1.3.2-sources.jar; 赠送Maven依赖信息文件:commons-io-1.3.2.pom; 包含翻译后的API文档:commons-io...
这个压缩包包含了该库的所有编译后的类文件和必要的资源,使得开发者能够在他们的项目中方便地使用Apache Commons IO的功能。 Apache Commons IO库的主要目标是弥补Java标准库中对输入/输出操作支持的不足。在描述...
本文将深入探讨`commons-io-2.6.jar`中的关键功能和使用方法。 一、文件操作 1. 文件和目录操作:Apache Commons IO提供了一系列API用于创建、删除、复制和移动文件及目录。例如,`FileUtils.copyFile()`和`...
开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2开发工具 commons-io-1.3.2...
赠送jar包:commons-io-2.7.jar 赠送原API文档:commons-io-2.7-javadoc.jar 赠送源代码:commons-io-2.7-sources.jar 包含翻译后的API文档:commons-io-2.7-javadoc-API文档-中文(简体)-英语-对照版.zip 对应...
"commons-io-2.7-bin.zip"是Apache Commons IO库的版本2.7的二进制分发包,它包含了编译好的Java类库供开发者直接使用。 1. **Apache Commons IO概述** - Apache Commons IO 是Apache软件基金会的一个项目,旨在...
赠送jar包:commons-io-2.5.jar; 赠送原API文档:commons-io-2.5-javadoc.jar; 赠送源代码:commons-io-2.5-sources.jar; 赠送Maven依赖信息文件:commons-io-2.5.pom; 包含翻译后的API文档:commons-io-2.5-...
Apache Commons IO 是一个Java库,...对于JDK 1.6及更高版本的项目,使用"commons-io-2.4"可以确保兼容性和效率。通过理解和运用这些知识点,开发者可以更高效地处理各种输入输出任务,提高代码的可读性和可维护性。
赠送jar包:commons-io-2.2.jar; 赠送原API文档:commons-io-2.2-javadoc.jar; 赠送源代码:commons-io-2.2-sources.jar; 包含翻译后的API文档:commons-io-2.2-javadoc-API文档-中文(简体)版.zip 对应Maven...
在实际开发中,Apache Commons FileUpload通常与Apache Commons IO结合使用,FileUpload负责解析上传的文件数据,而IO库则帮助开发者完成文件的保存、移动或处理。例如,开发者可以先使用FileUpload解析出上传的文件...
8. **测试与文档**: Apache Commons IO库拥有详尽的Javadoc文档和单元测试,这不仅方便了开发者的使用,也保证了库的质量和稳定性。 总的来说,Apache Commons IO是一个强大且全面的工具集,它简化了Java中的I/O...
Apache Commons IO 是一个Java库,专门用于处理输入/输出(I/O)操作。这个库提供了大量的实用工具类,简化了常见的文件、流、过滤器、读写操作等任务。"commons-io-2.11.0.rar"是Apache Commons IO库的版本2.11.0的...
《Apache Commons IO 2.3.jar:高效便捷的IO操作工具》 Apache Commons IO库是Java开发者必备的工具包之一,尤其是其中的commons-...因此,掌握Apache Commons IO的使用,无疑将提升Java程序员的开发技能和代码质量。
Apache Commons IO 是一个Java库,它提供了一系列实用工具类来处理输入/输出操作。这个压缩包包含从0.1版本到2.4版本的所有Apache Commons IO的发布。这些版本跨越了多个年份,反映了该库在发展过程中的功能增强、...
"commons-io-2.8.0.rar"是一个包含 Commons IO 库版本2.8.0的压缩包文件,便于开发者在项目中引用和使用。 在 Commons IO 中,我们可以找到许多有用的类和方法,这些在处理文件、流、字符集转换、读写操作等方面...
Commons IO 2.4版本 最新API帮助文档
以上只是 `commons-io-2.6.jar` 中部分关键功能的概述,实际使用中,根据具体需求,可以灵活组合这些工具类和方法,以满足各种 I/O 相关的需求。Apache Commons IO 以其强大的功能和良好的兼容性,广泛应用于各种 ...