FileReader(字符输入流):
文件字符输入流,只能读取普通文本。
读取文本内容时,比较方便,快捷。
示例代码01:
public class FileReaderTest { public static void main(String[] args) { FileReader reader = null; try { reader = new FileReader("IO/src/com/newstudy/javase/io/temp4.txt"); //准备一个char数组 char[] chars = new char[4]; // 往char数组中读,一次只能读取四个字节 reader.read(chars); // 按照字符的方式读取:第一次e,第二次f,第三次 风.... for(char c : chars) { System.out.print(c);//别把c错写成chars了 } //按照字符流的方式读,每次读四个字符 /*char[] chars = new char[4]; int readerCount = 0; while((readerCount = reader.read(chars)) != -1){ System.out.print(new String(chars,0,readerCount)); }*/ } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if(reader != null){ try { reader.close(); } catch (IOException e) { e.printStackTrace(); } } } } }
运行结果:
FileWriter(字符输出流):
示例代码02:
public class FileWriterTest { public static void main(String[] args) { FileWriter out = null; try { out = new FileWriter("file",true); //用字符串方式写入 char[] chars = {'我','是','中','国','人'};//API方法 out.write(chars); out.write(chars,2,3); //用字符串写入 out.write("我是一名java软件工程师!"); out.write("\n"); out.write("HelloWorld!"); //刷新 out.flush(); } catch (IOException e) { e.printStackTrace(); }finally { if(out != null){ try { out.close(); } catch (IOException e) { e.printStackTrace(); } } } } }
运行结果: