java IO流实现 实现两个文本的复制

举报
孙中明 发表于 2022/01/23 01:14:19 2022/01/23
【摘要】 package javaClass;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.Reader;import java.io.Writer; public class IO_file { ...





  
  1. package javaClass;
  2. import java.io.File;
  3. import java.io.FileReader;
  4. import java.io.FileWriter;
  5. import java.io.Reader;
  6. import java.io.Writer;
  7. public class IO_file {
  8. public static void main(String args[]){
  9. File f1 =new File("D:\\AD","a.txt");
  10. File f2 =new File("D:\\AD","b.txt");
  11. char c[]=new char[12];
  12. try{
  13. Writer out =new FileWriter(f1,true);
  14. Reader in=new FileReader(f2);
  15. int n=-1;
  16. while((n=in.read(c))!=-1){
  17. out.write(c,0,n);
  18. }
  19. out.flush();
  20. out.close();
  21. }
  22. catch(Exception e){
  23. System.out.println(e);
  24. }
  25. }
  26. }


flush() 是把缓冲区的数据强行输出,(注意不要和frush()刷新混淆了)
       主要用在IO中,即清空缓冲区数据,一般在读写流(stream)的时候,数据是先被读到了内存中,再把数据写到文件中,当你数据读完的时候不代表你的数据已经写完了,因为还有一部分有可能会留在内存这个缓冲区中。这时候如果你调用了close()方法关闭了读写流,那么这部分数据就会丢失,所以应该在关闭读写流之前先flush()。

转载于 https://zhidao.baidu.com/question/356798985.html


close()  输入流中若不使用的话会造成你所输入的文本非法关闭,可能会导致输入的内容无法正常保存或者文本损坏;输出流则相对没有此类问题,无须使用此语句,但应学会培养编程的好习惯,减少出错率.
转载于 https://zhidao.baidu.com/question/51775616.html



文章来源: hiszm.blog.csdn.net,作者:孙中明,版权归原作者所有,如需转载,请联系作者。

原文链接:hiszm.blog.csdn.net/article/details/53640479

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。