Commons-IO 2.4 發布
Commons-io 2.4 發布了,Commons項目中用來處理IO的一些工具類包,
//直接將IO流轉成字符串
InputStream in = new URL( "http://jakarta.apache.org" ).openStream();
try {
System.out.println( IOUtils.toString( in ) );
} finally {
IOUtils.closeQuietly(in);
}
//讀取文本文件的所有行
File file = new File("/commons/io/project.properties");
List lines = FileUtils.readLines(file, "UTF-8");
//路徑處理
String filename = "C:/commons/io/../lang/project.xml";
String normalized = FilenameUtils.normalize(filename);
// result is "C:/commons/lang/project.xml"
//獲取目錄空間
long freeSpace = FileSystemUtils.freeSpace("C:/");
//打印文件的所有行
LineIterator it = FileUtils.lineIterator(file, "UTF-8");
try {
while (it.hasNext()) {
String line = it.nextLine();
/// do something with line
}
} finally {
LineIterator.closeQuietly(iterator);
}
該版本改進記錄包括:
New features:
o IO-269: Tailer locks file from deletion/rename on Windows. Thanks to sebb.
o IO-333: Export OSGi packages at version 1.x in addition to 2.x. Thanks to fmeschbe.
o IO-320: Add XmlStreamReader support for UTF-32. Thanks to ggregory.
o IO-331: BOMInputStream wrongly detects UTF-32LE_BOM files as UTF-16LE_BOM files in method getBOM(). Thanks to ggregory.
o IO-327: Add byteCountToDisplaySize(BigInteger). Thanks to ggregory.
o IO-326: Add new FileUtils.sizeOf[Directory] APIs to return BigInteger. Thanks to ggregory, kinow.
o IO-325: Add IOUtils.toByteArray methods to work with URL and URI. Thanks to raviprak.
o IO-324: Add missing Charset sister APIs to method that take a String charset name. Thanks to raviprak.
Fixed Bugs:
o IO-336: Yottabyte (YB) incorrectly defined in FileUtils. Thanks to rleavelle.
o IO-279: Tailer erroneously considers file as new. Thanks to Sergio Bossa, Chris Baron.
o IO-335: Tailer#readLines - incorrect CR handling.
o IO-334: FileUtils.toURLs throws NPE for null parameter; document the behavior.
o IO-332: Improve tailer's reading performance. Thanks to liangly.
o IO-279: Improve Tailer performance with buffered reads (see IO-332).
o IO-329: FileUtils.writeLines uses unbuffered IO. Thanks to tivv.
o IO-319: FileUtils.sizeOfDirectory follows symbolic links. Thanks to raviprak.