为了面试,看java的I/O流。例子是看了很多,可究竟掌握的怎么样,不知道。看烦了,就写了这个小程序。
就是在控制台A跟B聊天,然后把聊天类容分行写入文件。
import java.io.*;
import java.util.Scanner;
public class Self{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
String self="";
int i=0;
try{File file=new File("d:/self.txt"); //创建一个self.txt的文件
while(true){
i++;
if(i%2==1){
System.out.println("A:");
OutputStream out=new FileOutputStream(file,true); //创建一个到file的输出流,调用这个构造方法,可以每次都把控制台的内容写入到文件
self=scanner.nextLine(); //读取scanner里的内容,必须调用nextLine()方法,才能读取一次性输入;next()只识别一个单词
String self1="A:"+self+"\r"+"\n"; //后面是为了分行
byte[] bytes=self1.getBytes();
out.write(bytes);
out.close();
}else{
System.out.println("B:");
OutputStream out=new FileOutputStream(file,true);
self=scanner.nextLine();
String self2="B:"+self+"\r"+"\n";
byte[] b=self2.getBytes();
out.write(b);
out.close();
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}
这是效果图