public class Test1 {
/**
* @param args
* 复制一个文本文件
* 明确源:FileReader,明确目的:FileWriter
* @throws IOException
*/
public static void main(String[] args) throws IOException {
FileReader fr=new FileReader("E:\\test.txt");
FileWriter fw=new FileWriter("E:\\test_copy1.txt");
char[] ch=new char[1024];
while((fr.read(ch))!=-1){
fw.write(new String(ch));
fw.flush();
}
fw.close();
fr.close();
}
}
public class Test2 {
/**
* @param args
* 读取键盘录入信息,并写入到一个文件中
* 明确源:System.in 明确目的:FileWriter
* 输入时,需要将字节转成字符
* @throws IOException
*/
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
FileWriter fw=new FileWriter("E:\\test2.txt");
String line=null;
while((line=br.readLine())!=null){
if("over".equals(line))
break;
fw.write(line);
fw.write("\r\n");
fw.flush();
}
}
public class Test3 {
/**
* @param args
* 将一个文本数据显示在控制台
* 明确源:FileReader, 明确目的:System.out
* 需要将字符流转成字节流
* @throws IOException
*/
public static void main(String[] args) throws IOException {
FileReader fr=new FileReader("E:\\test2.txt");
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb=new StringBuilder();
int ch=-1;
while((ch=fr.read())!=-1){
if(ch=='\r'){
continue;
}
if(ch=='\n'){
bw.write(new String(sb.toString()));
bw.newLine();
bw.flush();
sb.delete(0, sb.length());
}
else{
sb.append((char)ch);
}
}
}
}
public class Test4 {
/**
* @param args
* 读取键盘录入数据,显示在控制台
* 明确源System.in;明确目的System.out
* @throws IOException
*/
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
String line=null;
while((line=br.readLine())!=null){
if("over".equals(line)){
break;
}
bw.write(line);
bw.newLine();
bw.flush();
}
}
}