---------------------- ASP.Net+Unity开发.Net培训、期待与您交流!----------------------

<a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流!

文件复制的两种方法。这里主要讲解的是第一种该注意的地方。

注意,在用单个字符即取即存的时候,ch=fr.read() ,ch就是等于读取到的字符的ASCII对应的整型数据。在写入的时候,fw.write(ch) 。write( int ch).传入的是整型,写入后,自动转成char型。而在使用数组的时候,len = fr.read(buf)),len则等于读取到的字符数组的长度,字符仍缓存在字符数组buf中。字符都是通过flush或者close刷入文件中的。

  1. import java.io.*;
  2. /*
  3. 文件复制原理:
  4. 将C盘文件下的数据存储到D盘的一个文件下
  5.  
  6. 步骤:
  7. 1.在D盘下创建一个文件,来存储C盘文件中的数据
  8. 2.定义读取流和C盘文件关联
  9. 3.通过不断的读写完成数据存储
  10. 4.关闭数据流
  11. */
  12.  
  13. class CopyText
  14. {
  15. public static void main(String[] args) throws IOException
  16. {
  17. copy_1();
  18.  
  19. }
  20.  
  21. public static void copy_2()
  22. {
  23. FileWriter fw = null ;
  24. FileReader fr = null ;
  25. try
  26. {
  27. fw = new FileWriter("demo.txt");
  28. fr = new FileReader("1.txt");
  29.  
  30. char[] ch = new char[1024];
  31. int len = 0;
  32. while ((len = fr.read(buf))!=-1)
  33. {
  34. fw.write(buf,0,len);
  35. }
  36.  
  37. }
  38. catch (IOException e)
  39. {
  40. throw new RuntimeException("读写失败");
  41.  
  42. }
  43. finally
  44. {
  45. if(fr!=null)
  46. try
  47. {
  48. fr.close();
  49. }
  50. catch (IOException e)
  51. {
  52.  
  53. }
  54. if(fw!=null)
  55. try
  56. {
  57. fw.close();
  58. }
  59. catch (IOException e)
  60. {
  61. }
  62.  
  63. }
  64.  
  65. }
  66.  
  67. //从C盘读取一个字符,就往D盘写入一个字符
  68. public static void copy_1() throws IOException
  69. {
  70. //创建目的地
  71. FileWriter fw = new FileWriter("1.txt");
  72. //与已有文件关联
  73. FileReader fr = new FileReader("demo.txt");
  74.  
  75. int ch = 0;
  76.  
  77. while ((ch=fr.read())!=-1)
  78. {
  79. fw.write(ch);
  80. System.out.println((char)ch);
  81.  
  82. }
  83. System.out.println(ch);
  84. fw.close();
  85. fr.close();
  86.  
  87. }
  88.  
  89. }

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

黑马程序员——java基础之文件复制的更多相关文章

  1. 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)

    正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G  QQ 1481135711 这是我总 ...

  2. 黑马程序员----java基础笔记中(毕向东)

    <p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...

  3. 黑马程序员----java基础笔记上(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...

  4. 黑马程序员——JAVA基础之File类,递归,打印流,合并切割流

    ------- android培训.java培训.期待与您交流! ---------- File类 用来将文件或者文件夹封装成对象 方便对文件与文件夹的属性信息进行操作. File对象可以作为参数传递 ...

  5. 黑马程序员——JAVA基础之泛型和通配符

    ------- android培训.java培训.期待与您交流! ---------- 泛型:            JDK1.5版本以后出现新特性.用于解决安全问题,是一个类型安全机制. 泛型好处: ...

  6. 黑马程序员——JAVA基础之简述面向对象,类,变量,匿名对象

    ------- android培训.java培训.期待与您交流! ---------- 面向对象: 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将 ...

  7. 黑马程序员——JAVA基础之语法、命名规则

    ------- android培训.java培训.期待与您交流! ---------- 1.java语言组成:关键字,标识符,注释,常量和变量,运算符,语句,函数,数组. 2.java关键字:被Jav ...

  8. 黑马程序员——JAVA基础之IO流缓冲区,转换流,字节流

    ------- android培训.java培训.期待与您交流! ---------- 字符流的缓冲区        缓冲区的出现提高了对数据的读写效率. 对应类 •  BufferedWriter ...

  9. 黑马程序员——JAVA基础之IO流FileReader,FileWriter

    ------- android培训.java培训.期待与您交流! ---------- IO(Input Output)流  IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 J ...

随机推荐

  1. LinkedList的分析(转)

    一.源码解析 1. LinkedList类定义. public class LinkedList<E> extends AbstractSequentialList<E> im ...

  2. Oracle 更改用户名

    直接更改系统user$表中的用户名. 查询要更改的用户名 SQL> select user#,name,password from user$ where name ='TICKETS'; US ...

  3. Android Path

    外置SDCard(TF卡) 1. SDCard的挂载路径(根据系统不同的ROM挂载的路径不同,以下列举几个是从旧系统到新系统的表现形式) /sdcard/external_sd /mnt/extSdC ...

  4. 使用react-native做一个简单的应用-06商品界面的实现

    商品界面实现起来很简单,其实就是一个listview的使用: 关于listview的使用,在官方文档里面已经介绍的很详细了.在这里我要提一个坑. listview在Android和iOS中的效果是不一 ...

  5. C++Primer笔记(1)

    1.初始化 在C++中,初始化与赋值操作是完全不同的两个操作.初始化不是赋值,初始化的含义是创建变量时赋予其一个初始值,而赋值的含义是把对象的当前值擦除,而以一个新值来代替. 初始化的方式有: ; } ...

  6. leetcode_最长公共前缀

    题目:Write a function to find the longest common prefix string amongst an array of strings. 题解:给出的函数为: ...

  7. 关于取数组地址的识记(&s+1,s+1,&s[0]+1)

    #include <stdio.h> #include <malloc.h> int main() { ', 'o'}; ); printf(]); ]+); printf(] ...

  8. git push和git pull

    git push git push如果直接使用,不加repository和refspec,那么首先根据当前branch的branch name,在配置文件中找到branch.branchName.re ...

  9. discuz x2 个人资料项排序问题解决方法、添加自定义字段、修改栏目名称和介绍

    第一次写文章,希望与人提供方便同时,别误人子弟,自己研究的,大家看不懂只改文件就可以了,如果发现不对的地方请回复或直接通知我,谢谢,本来想在discuz论坛上发的,不懂版规也没时间看版规,怕发错,隔小 ...

  10. 数字转化为人民币大写(PHP)

    <?php function numTrmb($num) { $d = array("零", "壹", "贰", "叁&qu ...