hb_sz 发表于 2016-12-31 10:26:05

apache commons 搜集总结

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
import java.io.Writer;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.FileSystemUtils;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.filefilter.SuffixFileFilter;
import org.apache.commons.io.output.CountingOutputStream;
import org.apache.commons.io.output.TeeOutputStream;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.time.StopWatch;
 
//输入流复制到输出流
Writer write = new FileWriter("c:\\person.txt");
InputStream ins = new FileInputStream(new File("c:\\text.txt"));
org.apache.commons.io.IOUtils.copy(ins, write);
write.close();
ins.close();//网络流保存为文件
URL url = new URL("http://www.163.com");
File file = new File("c:\\163.html");
//文件目录操作
File dir = new File("c:\\test");
FileUtils.cleanDirectory(dir);// 清空目录下的文件
//目录大小
long size = FileUtils.sizeOfDirectory(dir);//如果不存在,新建
// 如果存在,修改文件修改时间
FileUtils.touch(testFile);
//如果不存在,新建
// 如果存在,修改文件修改时间
FileUtils.touch(testFile); File testFile = new File( "testFile.txt" ); FileUtils.deleteDirectory(dir);//删除目录和目录下的文件 FileUtils.copyURLToFile(url, file); 
//文本写入指定文件
String name = "my name is kk";
File file = new File("c:\\text.txt");
FileUtils.writeStringToFile(file, name);
//将输入流转换成文本
URL url = new URL("http://www.163.com");
InputStream ins = url.openStream();
String contents = org.apache.commons.io.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 {
org.apache.commons.io.IOUtils.closeQuietly(ins);
}

//文件复制
File srcfile = new File("c:\\Test.java");
File destfile = new File("c:\\Test.java.bak");
FileUtils.copyFile(srcfile, destfile);
//察看剩余空间
long freeSpace = FileSystemUtils.freeSpaceKb("c:/");
//记录流的读取写入字节数
File test = new File( "test.txt" );
//输出流的统计
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 {
org.apache.commons.io.IOUtils.closeQuietly(countStream);
}
if (countStream != null) {
int bytesWritten = countStream.getCount();
System.out.println("Wrote " + bytesWritten + " bytes to test.txt");
//相同的内容写入不同的文本
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 {
org.apache.commons.io.IOUtils.closeQuietly( outStream );
//得到某个目录下所有以.txt结尾的文件
File rootDir = new File("F:/jianpuzhai/resource");
FilenameFilter fileFilter = new SuffixFileFilter(".txt");
String[] txtFiles = rootDir.list( fileFilter );
System.out.println( ArrayUtils.toString( txtFiles ) ); } } 
System.out.println("剩余多少:"+freeSpace/(1024*1024)+"G");
 
页: [1]
查看完整版本: apache commons 搜集总结