什么时候能有钱 2020-04-08 12:24 采纳率: 0%
浏览 197

我用缓冲字符流和缓冲字节流去复制同一个文本文件,发现缓冲字节流快于缓冲字符流,怎么和网上说的不一样?

/*
 * 缓冲字节流
 */
public static void copyFile(String src, String dest, Integer byteLenth) {
    BufferedInputStream bis = null;
    BufferedOutputStream bos = null;
    try {
        bis = new BufferedInputStream(new FileInputStream(new File(src)));
        bos = new BufferedOutputStream(new FileOutputStream(new File(dest)));
        byte[] b = new byte[byteLenth];
        int len;
        while ((len = bis.read(b)) != -1) {
            bos.write(b, 0, len);
        }
        System.out.println("复制成功");
    } catch (Exception e) {
        System.err.println(e.getMessage());
    } finally {
        if (bos != null) {
            try {
                bos.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        if (bis != null) {
            try {
                bis.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

/*
 * 缓冲字符流![图片说明](https://img-ask.csdn.net/upload/202004/08/1586319798_322502.png)

 */
public static void copyTextFile(String src, String dest, Integer charLenth) {
    // 创建FileOutputStream的对象
    BufferedReader br = null;
    BufferedWriter bw = null;
    try {
        br = new BufferedReader(new FileReader(new File(src)));
        bw = new BufferedWriter(new FileWriter(new File(dest)));
        char[] c = new char[charLenth];
        int len;
        while ((len = br.read(c)) != -1) {
            bw.write(c, 0, len);
        }
        System.out.println("复制成功");
    } catch (Exception e) {
        System.err.println(e.getMessage());
    } finally {
        if (bw != null) {
            try {
                bw.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        if (br != null) {
            try {
                br.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2020-04-08 21:02
    关注
    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?