CommonsIO的使用

我们为什么需要CommonsIO?

  Java提供的IO流类,均是较为基础的功能,在进行复杂操作时需要做大量的编程工作,而且往往都是功能类似代码重复的工作。

   Apache-commons工具包中的IOUtils/FileUtils工具类,为我们提供了更加简单、功能更加强大的文件操作和IO流操作功能。

CommonsIO

  要想使用,首先当然是前往下载:http://commons.apache.org/proper/commons-io/download_io.cgi
在这里插入图片描述
  我们一般都是在Windows系统下进行开发,则下载.zip的压缩包。建议source也下载,并关联,方便查看源码。

  旁边导航栏可以直接进入API文档。
在这里插入图片描述

  将commons-io的jar包导入工程,则可以使用了。

FileUtils

  FieUtils类中的常用方法:

方法说明
cleanDirectory清空目录,但不删除目录。
contentEquals比较两个文件的内容是否相同。
copyDirectory将一个目录内容拷贝到另一个目录。可以通过FileFilter过滤需要拷贝的 文件。
copyFile将一个文件拷贝到一个新的地址。
copyFileToDirectory将一个文件拷贝到某个目录下。
copyInputStreamToFile将一个输入流中的内容拷贝到某个文件。
deleteDirectory删除目录。
deleteQuietly删除文件。
listFiles列出指定目录下的所有文件。
openInputSteam打开指定文件的输入流。
readFileToString将文件内容作为字符串返回。
readLines将文件内容按行返回到一个字符串数组中。
size返回文件或目录的大小。
write将字符串内容直接写到文件中。
writeByteArrayToFile将字节数组内容写到文件中。
writeLines将容器中的元素的toString方法返回的内容依次写入文件中。
writeStringToFile将字符串内容写到文件中。

IOUtils

  IOUtils类中的常用方法:

方法说明
buffer方法将传入的流进行包装,变成缓冲流。并可以通过参数指定缓冲大小。
closeQueitly方法关闭流。
contentEquals方法比较两个流中的内容是否一致。
copy方法将输入流中的内容拷贝到输出流中,并可以指定字符编码。
copyLarge方法将输入流中的内容拷贝到输出流中,适合大于2G内容的拷贝。
lineIterator方法返回可以迭代每一行内容的迭代器。
read方法将输入流中的部分内容读入到字节数组中。
readFully方法将输入流中的所有内容读入到字节数组中。
readLine方法读入输入流内容中的一行。
toBufferedInputStream,toBufferedReader将输入转为带缓存的输入流。
toByteArray,toCharArray将输入流的内容转为字节数组、字符数组。
toString将输入流或数组中的内容转化为字符串。
write方法向流里面写入内容。
writeLine方法向流里面写入一行内容。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Apache Commons IO读取SDK文件可以大大简化代码实现,具体步骤如下: 1. 引入Apache Commons IO库 首先需要在项目中引入Apache Commons IO库,可以在项目的Maven依赖中添加以下配置: ``` <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.8.0</version> </dependency> ``` 如果不使用Maven,可以在项目中手动加入commons-io-x.x.x.jar文件。 2. 使用FileUtils读取文件 FileUtils是Apache Commons IO库中的一个工具类,提供了很多文件操作的方法,包括读取文件。使用FileUtils读取文件的示例代码如下: ```java import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; public class ReadSdkExample { public static void main(String[] args) { File sdkFile = new File("path/to/sdk/file"); try { String sdkContent = FileUtils.readFileToString(sdkFile, "UTF-8"); // 处理读取到的SDK内容 System.out.println(sdkContent); } catch (IOException e) { e.printStackTrace(); } } } ``` 上述示例代码中,首先通过File类创建一个代表SDK文件的File对象,然后使用FileUtils.readFileToString方法读取文件内容并将其转换为字符串格式。在读取过程中需要指定文件的编码格式,这里使用了UTF-8编码。 注意:在使用FileUtils.readFileToString方法时,如果文件过大可能会导致内存溢出。此时可以使用FileUtils.readLines方法按行读取文件内容,并逐行处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值