现在的位置: 首页 > 综合 > 正文

将控制台每次输入写入文件并分行

2019年09月25日 ⁄ 综合 ⁄ 共 832字 ⁄ 字号 评论关闭

为了面试,看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();
		}		
	}
}

这是效果图

抱歉!评论已关闭.