Reader和Writer针对字符文件 对图片类文件可能就显得无能为力了 会损坏文件
package ioStudy; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.io.Reader; /* 1.创建源 2.选择流 3.操作 4.释放资源 */ public class IOstudy5 { public static void main(String[] args) { File file = new File("test.txt"); //针对字符文件 Reader reader = null; try { reader = new FileReader(file); char[] buffer = new char[1024]; int len; while ((len = reader.read(buffer)) != -1) { //一次读取多个 String s = new String(buffer,0,len); System.out.print(s); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { if(reader!=null) { try { reader.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
1 package ioStudy; 2 3 import java.io.File; 4 import java.io.FileNotFoundException; 5 import java.io.FileWriter; 6 import java.io.IOException; 7 import java.io.Writer; 8 9 /* 10 1.创建源 11 2.选择流 12 3.操作 13 4.释放资源 14 */ 15 public class IOstudy6 { 16 public static void main(String[] args) { 17 File file = new File("output.txt"); // 不存在会自动创建 18 Writer writer = null; 19 20 try { 21 writer = new FileWriter(file,true); //开启向后追加 不然每次都删掉原来的 再写 默认的是false 22 String temp = "hello world! 哈哈哈哈,测试中文可以用嘛"; 23 // byte[] b = temp.getBytes(); 24 writer.write(temp); 25 writer.flush(); //刷新内存 26 } catch (FileNotFoundException e) { 27 // TODO Auto-generated catch block 28 e.printStackTrace(); 29 } catch (IOException e) { 30 // TODO Auto-generated catch block 31 e.printStackTrace(); 32 } finally { 33 if (writer != null) { 34 try { 35 writer.close(); 36 } catch (IOException e) { 37 // TODO Auto-generated catch block 38 e.printStackTrace(); 39 } 40 } 41 } 42 } 43 }