• io工具类


    文件读写工具类

    public class TextFile extends ArrayList<String> {
      // Read a file as a single 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("
    ");
            }
          } finally {
            in.close();
          }
        } catch(IOException e) {
          throw new RuntimeException(e);
        }
        return sb.toString();
      }
      // Write a single file in one method call:
      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);
        }
      }
      // Read a file, split by any regular expression:
      public TextFile(String fileName, String splitter) {
        super(Arrays.asList(read(fileName).split(splitter)));
        // Regular expression split() often leaves an empty
        // String at the first position:
        if(get(0).equals("")) remove(0);
      }
      // Normally read by lines:
      public TextFile(String fileName) {
        this(fileName, "
    ");
      }
      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);
        }
      }
      // Simple test:
      public static void main(String[] args) {
        String file = read("TextFile.java");
        write("test.txt", file);
        TextFile text = new TextFile("test.txt");
        text.write("test2.txt");
        // Break into unique sorted list of words:
        TreeSet<String> words = new TreeSet<String>(
          new TextFile("TextFile.java", "\W+"));
        // Display the capitalized words:
        System.out.println(words.headSet("a"));
      }
    }

    二进制文件读取工具类:

    public class BinaryFile {
      public static byte[] read(File bFile) throws IOException{
        BufferedInputStream bf = new BufferedInputStream(
          new FileInputStream(bFile));
        try {
          byte[] data = new byte[bf.available()];
          bf.read(data);
          return data;
        } finally {
          bf.close();
        }
      }
      public static byte[]
      read(String bFile) throws IOException {
        return read(new File(bFile).getAbsoluteFile());
      }
    } 
  • 相关阅读:
    【NYOJ】[22]素数求和问题
    【NYOJ】[13]Fibonacci数
    【NYOJ】[13]Fibonacci数
    【CodeForces】[606A]Magic Spheres
    【CodeForces】[606A]Magic Spheres
    【杭电】[1201]18岁生日
    【杭电】[1201]18岁生日
    【杭电】[1994]利息计算
    【杭电】[1994]利息计算
    新型量子云装置问世 让你免费体验量子计算机
  • 原文地址:https://www.cnblogs.com/qilong853/p/6516412.html
Copyright © 2020-2023  润新知