34.1 字符流-- FileRead FileWrite

 

一次读取一个字符

     FileReader fr = new FileReader("aa.txt");
//        System.out.println(fr.read());
//        System.out.println(fr.read());
//        System.out.println(fr.read());
//        System.out.println(fr.read());
//        System.out.println(fr.read()); //如果读取数据的返回值是-1的时候,就说明没有数据了

        int len;
        while ((len=fr.read())!=-1) {
            System.out.println((char)len); //强制类型转换,int转为char
        }

        fr.close();

输出

 

一次读取一个字符数组

 FileReader fr = new FileReader("a.java");
        char[] chs = new char[5]; //创建字符数组对象,定义数组长度为五(一次读五个数据)
        int len;
        while ((len=fr.read(chs))!=-1) {
//            System.out.println(new String(chs)); //每次读5个字符,如果最后一个字符不足五个,(后面的数组覆盖之前数组)如:最后数组分3个字符,会显示3个字符+之前数组的最后两字符
            System.out.println(new String(chs,0,len));
            System.out.println("len:" + len);
        }
        fr.close();

/*
//        System.out.println(fr.read(chs));
//        System.out.println(fr.read(chs));
//        System.out.println(fr.read(chs));
//        System.out.println(fr.read(chs));
        int lens = fr.read(chs); // a 1 \r \n a
        for(int i=0;i<chs.length;i++) { //方法一、通过for循环打印数据中数据
            System.out.println(chs[i]);
        }

        //String(char[] value):把字符数组的数据封装成字符串对象
        String s = new String(chs); //方法二、通过String类的构造方法把数组封装成字符串对象
        System.out.println(s);

        System.out.println(new String(chs)); //使用方法二的匿名对象
        */

 

 输出

如果使用System.out.println(new String(chs));

 

 

二、copydemo

  //一次读写一个字符数组
        FileReader fr = new FileReader("a.java");
        FileWriter fw = new FileWriter("b.java");
        char[] chs = new char[5];

        int len;
        while ((len=fr.read(chs))!=-1) {
            fw.write(chs,0,len);
            fw.flush();
        }

        fw.close();
        fr.close();

 

转载于:https://www.cnblogs.com/longesang/p/11319981.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值