import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
/**
* 功能:将从键盘输入的一行行数据复制到一个文件中
* @author Administrator
*
*/
public class TestCopy {
public static void main(String[] args) throws IOException {
//创建输入流和输出流
//BufferedReader br = new BufferedReader(new FileReader(new File("e:/log.txt")));
Scanner input = new Scanner(System.in);
BufferedWriter bw = new BufferedWriter(new FileWriter("e:/log3.txt"));
//使用输入流和输出流
//String str = br.readLine();
String str = input.nextLine();
while(!"bye".equals(str)){
//写一行
bw.write(str);//只负责写,没有换行
bw.newLine();//添加一个换行符
//再读一行
str = input.nextLine();
}
//关闭输入流和输出流
//br.close();
input.close();
bw.close();
}
}
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
/**
*功能:将从键盘输入的一行行数据复制到一个文件中
*
*
* 转换流
*
*
* 1.生活案例
* System.in -----------转换流 ----------- Reader ---------- BufferedReader(readLine())
* 三相插头 -----------(三相的插座)转换头(两相插头)----------- 两相插座
* 适配器模式(转换器模式)
*
* 2.Java中提供了哪些转换流
* InputStreamReader 将InputStream转换成Reader
* OutputStreamWriter 将 OutputStream转换成Writer
* ReaderInputStream 没有
* WriterOutputStream 没有
* 只有将字节流转换成字符流的转换流
*
* 3.InputStreamReader到底是Reader还是InputStream
* InputStreamReader是Reader的一个子类陈
* Reader reader = new InputStreamReader(is);
public class InputStreamReader extends Reader {
}
* 4.标准输入输出设备
* System.in :键盘
* System.out:显示器
* System.err:显示器
*
* @author Administrator
*
*/
public class TestCopy2 {
public static void main(String[] args) throws IOException {
//创建输入流和输出流
InputStream is = System.in;
Reader reader = new InputStreamReader(is);//!!!!!
BufferedReader br = new BufferedReader(reader);
BufferedWriter bw = new BufferedWriter(new FileWriter("e:/log2.txt"));
//使用输入流和输出流
String str = br.readLine();
while(!"bye".equals(str)){
//写一行
bw.write(str);//只负责写,没有换行
bw.newLine();//添加一个换行符
//System.out.println();
//bw.write("\r");
//再读一行
str = br.readLine();
}
//关闭输入流和输出流
br.close();
bw.close();
}
}