非常实用的Java文件操作类
来源:互联网 发布:繁体字转换简体字 mac 编辑:程序博客网 时间:2024/05/17 23:59
import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileReader;import java.io.IOException;import java.io.PrintWriter;import java.util.ArrayList;import java.util.Arrays;/** * 一个非常实用的文件操作类 * * @author zhangjunying * */public class TextFile extends ArrayList<String> { private static final long serialVersionUID = -1942855619975438512L; // 以字符串形式读取文件 public static String read(String filename) { StringBuilder sb = new StringBuilder(); try { BufferedReader in = new BufferedReader(new FileReader(new File( filename).getAbsoluteFile())); String s; try { while ((s = in.readLine()) != null) { sb.append(s); sb.append("\n"); } } finally { in.close(); } } catch (IOException e) { throw new RuntimeException(e); } return sb.toString(); } // 在一个方法调用中写一个文件 public static void write(String fileName, String text) { try { PrintWriter out = new PrintWriter( new File(fileName).getAbsoluteFile()); try { out.print(text); } finally { out.close(); } } catch (IOException e) { throw new RuntimeException(e); } } // 读取一个文件,通过任何正则表达式拆分 public 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) out.println(item); } finally { out.close(); } } catch (IOException e) { throw new RuntimeException(e); } } /** * 读取二进制文件 * * @param file * file对象 * @return * @throws IOException */ public static byte[] BinaryFile(File file) throws IOException { BufferedInputStream bf = new BufferedInputStream(new FileInputStream( file)); try { byte[] data = new byte[bf.available()]; bf.read(data); return data; } finally { bf.close(); } } /** * 读取二进制文件 * * @param file * 文件路径 * @return * @throws IOException */ public static byte[] BinaryFile(String file) throws IOException { return BinaryFile(new File(file).getAbsoluteFile()); } // 测试,我已经在根目录生成了一个名为reflectDemo.java的文件 public static void main(String[] args) { String path = "/home/zhangjunying/Workspaces/MyEclipse Professional 2014/BasicInterviewQuestions/src/reflectDemo.java"; /* read() 测试 */ System.out.println(read(path)); /* write() 测试 */ write("out.d", "测试写"); /* 构造测试 */ TextFile tf = new TextFile(path); }}
阅读全文
0 0
- 非常实用的Java文件操作类
- 非常实用的PHP分页类文件
- java io典型操作(非常实用)
- java删除文件夹的工具类----非常实用哦
- java对文件实用操作
- 一个非常实用的JAVA程序:能够制作gif文件的小程序
- 实用的php文件操作类
- 非常实用的jmail的几个类~~
- jquery中操作数组非常实用的方法
- MAC OS 9个非常实用的命令行操作
- 一个非常实用的Base64类
- 一个非常实用的Base64类(转载)
- 一个非常实用的ping类
- 一个非常实用的Base64类
- 一个非常实用的分页类
- 非常实用的网址
- 非常实用的拒酒词
- c#XML文件操作类 实用的XML操作
- 24点游戏c++
- recovery 升级时间戳校验
- 游戏编程入门(14):创建子画面背景
- Android HFP流程记录
- String to Integer (atoi)
- 非常实用的Java文件操作类
- C++智能指针
- linux查看内存占用情况(简洁版)
- 如何有效防止SQL注入
- 动态规划:HDU1176-免费馅饼
- Python标准库--random,sys,time
- jdk 中常用的 xml 数据解析
- OPP文件传输
- 关于C中的\n