1 package DEMO; 2 3 import java.io.File; 4 import java.io.FileOutputStream; 5 import java.io.IOException; 6 import java.io.OutputStream; 7 import java.util.Scanner; 8 9 /*10 * 文件字节输出流 2014-7-2911 * 1.给出输出流的目的地12 * 2.创建指向目的地的输出流13 * 3.人输出流把数据写入到目的地14 * 4.关闭输出流 15 * 16 * 举例: 使用文件输出流写文件a.txt17 * 措施:首先使用具有刷新功能的构造方法创建指向文件a.txt的输出流,18 * 并向a.txt文件写入“新年快乐”,然后在选择使用不刷新文件的构造方法19 * 20 * 指向a.txt。并向文件写入(即尾加),"happy New Year !"。21 */22 23 public class test24 {25 public static void main(String args [])26 {27 /*byte [] a="新年快乐".getBytes();*/28 byte [] a= new byte [100];29 Scanner reader=new Scanner(System.in);30 int i=0;31 while(reader.hasNext())32 a=reader.next().getBytes();33 byte [] b ="happy New Year".getBytes();34 File file = new File("a.txt");35 if(!file.exists())36 { 37 //如果不存在,则在指定的目录下创建一个a.txt;38 try {39 file.createTempFile("Gxjun", ".java") ;40 } catch (IOException e) {41 // TODO Auto-generated catch block42 e.printStackTrace();43 }44 }45 try {46 OutputStream out= new FileOutputStream(file); //输出的目的地47 System.out.println(file.getName()+"的大小:"+file.length()+"字节");48 out.write(a);49 out.close();50 out= new FileOutputStream(file,true); //不刷新,准备向文件尾加内容51 System.out.println(file.getName()+"的大小:"+file.length());52 out.write(b,0,b.length);53 System.out.println(file.getName()+"的大小:"+file.length()+"字节");54 //a.txt的大小:22字节55 out.close();56 } catch (IOException e) {57 // TODO Auto-generated catch block58 e.printStackTrace();59 } 60 }61 }
效果: