bufferwriter(java这个BufferedWriter和BufferedReader解决的问题)
本文目录
java这个BufferedWriter和BufferedReader解决的问题
import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;public class Copy { public static void main(String args){ //记得先把s1.txt创建在C盘 File source = new File("c:/s1.txt"); File target = new File("c:/s2.txt"); //如果s2不存在则创建s2 if(!target.exists()){ try { target.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } try { BufferedReader br = new BufferedReader(new FileReader(source)); BufferedWriter bw = new BufferedWriter(new FileWriter(target)); char; System.out.println("文件复制开始"); while(br.read(buffer) != -1){ bw.write(buffer); } bw.close(); br.close(); System.out.println("文件复制结束"); } catch (Exception e) { e.printStackTrace(); } }}
java bufferwriter为什么不能输入到文件中
输出内容到文件最好用打印流PrintWriter/PrintStream 你那种方法不行 把BufferedWriter改成下面的方法就行了 PrintWriter bfWriter=new PrintWriter(writer); bfWriter.println(s); 你关流的时候只用关最外层的BufferedWriter和BufferedReader就OK了,里面的字符流,字节流都一并给关掉了!
bufferwriter和stringwriter的异同
如它们的名字所暗示的,BufferedWriter 仅仅是额外增加了缓冲(Buffered) 功能,也就是它依然将数据写入到原来的那个 Writer (就是你创建 BufferedWriter 时的那个参数 writer) 中,只是它可能不是每次调用立即写出去而是有缓冲,至于缓冲的方法和时机这我们不需要关心。我们只需要按它文档说的,事情做完了之后或你认为需要立即写出时就 flush 一下就可以了。StringWriter 则是把一个东西写成一个 String 的一部分,它用来拼接字符串。所有这些都叫 "Wrapper" ,在 Java 流式 API 中它是 Filtered ...,就像 FilteredInputStream, FilteredOutputStream 的功能一样。 像 ZipOutputStream 就是一个 Wrapper 在写入数据时压缩,数据本身依然是写入到原来的 OutputStream,我们只是额外增加了 Zip 压缩的功能。
更多文章:
thinkpad x120e(thinkpad x120e配置)
2024年7月20日 10:11
联想ideapad y510(联想ideaPad y510最大支持内存)
2024年7月26日 18:15
intel gma hd 4000(intelgmahd4000相当于什么级别独立显)
2024年7月28日 17:12