天天看点

Java IO的一般使用模式

以前对Java IO中的装饰模式搞得稀里糊涂的,现在整理下它的使用方法如下:

文本文件的读写:

写文件

输出的一般模式:

PrintWriter

    →BufferedWriter(可选项)

        →FileWriter

PrintWriter out = new PrintWriter(file);

或者

PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(file)));

创建添加式文本输出

PrintWriter out = new PrintWriter(file,true);

PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(file,true)));

下面看一个例子:

package com.tzy.file;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class TextFileWriter {
  public static void main(String[] args) {
    short age = 24;
    String name = "tanzhenyu";
    String gender = "male";
    try {
      PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("DataWriter.txt",true)));
      out.println(name);
      out.println(gender);
      out.println(age);
      out.close();
    } catch (IOException e) {
      System.out.println(e);
    }
    System.out.println("Success!");
  }
}      

读文件

输入的一般模式:

BufferedReader

    →FileReader

BufferedReader in = new BufferedReader(new FileReader(file));

下面看一个例子:

package com.tzy.file;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class TextFileReader {
  public static void main(String[] args) {
    String filePath = "E:\\EclipseWorkSpace\\javaLang\\";
    String fileName = "DataWriter.txt";
    try {
      File myFile = new File(filePath,fileName);
      BufferedReader in = new BufferedReader(new FileReader(myFile));
      String line = in.readLine();
      while (line != null) {
        System.out.println(line);
        line = in.readLine();
      }
      in.close();
    } catch (IOException e) {
      System.out.println(e);
    }
  }
}