分享两个比较有趣的I/O流知识点
字符缓冲输出流:BufferedWriter 和 字符缓冲输入流:BuffereReader
输出流就是把字符串写入到指定的路径里;
输入流是把指定的路径的文档内容提取。
通过这两个知识点,我们就可以随意的把电脑文件复制了。
字符流一般应用于文本的传输和复制,
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class BufferedWriterHongWork {
public static void main(String[] args) {
// TODO 自动生成的方法存根
FileWriter bf = null;
FileReader br2 = null;
BufferedWriter bw = null;
BufferedReader br = null;
try {
bf = new FileWriter("E:\\BBQ.txt");
bw = new BufferedWriter(bf);
bw.write("《山居秋暝》");
bw.newLine();
bw.write("王维 ");
bw.newLine();
bw.write("空山新雨后,天气晚来秋。");
bw.newLine();
bw.write("明月松间照,清泉石上流");
bw.newLine();
bw.write("竹喧归浣女,莲动下渔舟。");
bw.newLine();
bw.write("随意春芳歇,王孙自可留。");
bw.flush();
br2 = new FileReader("E:\\BBQ.txt");
br = new BufferedReader(br2);
bf = new FileWriter("BBQA.txt");
//bw2 写入新的Txt文件里 ,这里没指定路径,新的Txt是在你项目的文件夹里
char[] chs = new char[1024];
int len=0;
while((len=br.read(chs))!=-1){
bf.write(chs,0,len);
bf.flush(); //刷新
String string = new String(chs,0,len);
System.out.println(string);
}
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}finally {
if(bw!=null) {
try {
bw.close();
br.close();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
}
}