java 文件读写的实用工具

来源:互联网 发布:虚拟串口调试软件 编辑:程序博客网 时间:2024/06/01 23:11

java 文件读写的实用工具

package org.rui.io.util;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.PrintWriter;import java.util.ArrayList;import java.util.Arrays;import java.util.TreeSet;/** * 文件读写的实用工具 * @author lenovo * */public class TextFile  extends ArrayList<String>{//读取一个文件,并返回字符串public static String read(String fileName){StringBuilder sb=new StringBuilder();try {BufferedReader in=new BufferedReader(new FileReader(new File(fileName).getAbsoluteFile())// 返回此抽象路径名的绝对路径名形式。);try {String s;while((s=in.readLine())!=null)sb.append(s);sb.append("\n");} finally{in.close();}} catch (Exception e) {throw new RuntimeException(e);}return sb.toString();}// write a singlepublic static void write(String fileName,String text){try {PrintWriter out=new PrintWriter(new File(fileName).getAbsoluteFile());try {out.print(text);}finally{out.close();}} catch (Exception e) {throw new RuntimeException(e);}}// read a filepublic TextFile(String fileName,String splitter){//放入集合,super(Arrays.asList(read(fileName).split(splitter)));if(get(0).equals("")) remove(0);}public TextFile(String fileName){//重载当前构造器this(fileName,"\n");}public void write(String fileName){try {PrintWriter out=new PrintWriter(new File(fileName).getAbsoluteFile());try {for(String item:this){//System.out.println(item); out.println(item);}} finally{out.close();}} catch (Exception e) {throw new RuntimeException(e);}}/////simple testpublic static void main(String[] args) {//路径根据自已的改String path="D:\\Users\\liangrui\\workspace\\thinking\\src\\org\\rui\\io\\util/";String fileText =read(path+"TextFile.java");//读取当前java文本//写入文件write(path+"newText.txt",fileText);//对象 写TextFile tf=new TextFile(path+"newText.txt");//再次读取写入的新文本tf.write(path+"newText2.txt");//再次写入//读取文本并放入TreeSet集合中TreeSet<String> words=new TreeSet<String>(new TextFile(path+"TextFile.java","\\W+")//\W词字符);//headSet 返回此 set 的部分视图,其元素严格小于  toElement。System.out.println(words.headSet("a"));}}/** * output:[0, ArrayList, Arrays, BufferedReader, D, Exception, File,FileReader, PrintWriter, RuntimeException, String, StringBuilder, System, TextFile, TreeSet, Users, W] */

package org.rui.io.util;import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;/** * 读取二进制文件 * @author lenovo * */public class BinaryFile {public static byte[] read(File bFile) throws IOException{BufferedInputStream bis=new BufferedInputStream(new FileInputStream(bFile));try {//产生恰当数组尺寸byte[] data=new byte[bis.available()];bis.read(data);return data;} finally{bis.close();}}public static byte[] read(String bF) throws IOException{//重载return read(new File(bF).getAbsoluteFile());// getAbsoluteFile 返回此抽象路径名的绝对路径名形式。}}


0 0