JAVA字节缓冲流代码实现所有类型文件的复制

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class CopyAll {
    public static void main(String[] args) {
        //原路径
        String oldFile = "";
        //新路径
        String newFile = "";
        //调用拷贝所有文件的方法
        copyAll(oldFile,newFile);
    }
    //定义一个拷贝文件的方法,oldFile-->原路径 newFile-->新路径
    public static void copyAll(String oldFile,String newFile) {
        try (//创建字节输入缓冲流对象
            BufferedInputStream bis = new BufferedInputStream(new FileInputStream(new File(oldFile)));
            //创建字节输出缓冲流对象
            BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File(newFile)))
                ){
            //复制,一边读一边写
            byte[] by = new byte[1024];
            int len;
            while((len = bis.read(by)) != -1) {
                bos.write(by, 0, len);
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            
        }
    }
}

原文地址:https://www.cnblogs.com/private-mingmie/p/11819002.html

时间: 2024-10-09 11:09:37

JAVA字节缓冲流代码实现所有类型文件的复制的相关文章

java字节缓冲流和字符缓冲流

一.字节缓冲流 1.介绍 字节缓冲流根据流的方向,分为: 1.写入数据到流中,字节缓冲输出流 BufferedOutputStream 2.读取流中的数据,字节缓冲输入流 BufferedInputStream 它们的内部都包含了一个缓冲区,通过缓冲区读写,就可以提高了IO流的读写速度 2.字节缓冲输出流BufferedOutputStream 构造方法: public BufferedOutputStream(OutputStream out):创建一个新的缓冲输出流,以将数据写入指定的底层输

字节缓冲流 ( BufferedInputStream / BufferedOutputStream)

package com.sxt.reader; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /* * 字节缓冲流 * BufferedI

Java之缓冲流(字节/字符缓冲流)

概述 缓冲流,也叫高效流,是对4个基本的 FileXxx 流的增强,所以也是4个流,按照数据类型分类: 字节缓冲流: BufferedInputStream , BufferedOutputStream 字符缓冲流: BufferedReader , BufferedWriter 缓冲流的基本原理及好处 是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率. BufferedOutputStream 字节缓冲输出流 java.io.Buff

Java IO 过滤流 字节缓冲流 BufferedInput/OutputStream

Java IO 过滤流 字节缓冲流 BufferedInput/OutputStream @author ixenos 概念 BufferedInput/OutputStream是实现缓存的过滤流,他们分别是FilterInput/OutputStream的子类. BufferedInputStream工作流程 stream-->buf--read buf-->I 1.当一个BufferedInputStream被创建时,一个内部的缓冲区 byte[] buf = new byte[size]

java _io_字节缓冲流(装饰器)输入、输出

*装饰模式 字节缓冲流 BufferedInputStream bis=new BufferedInputStream(inputStream is) BufferedOutputStream bos=new BufferedOutputStream(OutputStream os) 最底层一定是节点流 只需要释放最外层的处理流,若要手动关闭遵循从里到外的顺序关闭(从字节流到处理流) 默认为8k,可以改变//参数是字节输入流对象InputStream is =new BufferedInputS

编码表、字节流、字节缓冲流

概念:     字节流不需要刷新(byte) 字符流需要刷新(char) IO流:input(通过Java程序往内存里读取) output(通过Java程序往硬盘上外写出) 输入输出流 * IO流的分类 *          按照操作的数据不同 *                 字节流:操作字节,由于计算机上一切皆是字节,字节流可以操作一切数据 *                 字符流:操作字符,只能操作文本文件 *                 文本文件:能使用文本工具 打开 看懂的叫做

【Java】缓冲流如何提高性能

前言 本文写的粗糙,仅作于工作间隙的随笔. 传统的Java IO是基于阻塞的,他的工作状态就是"读/写,等待,读/写,等待······". 缓冲流有字节和字符两种,原理上几乎差不读,本处以字节缓冲路来进行讨论. 一.缓冲输入流 BufferedInputStream extends FileInputStream,缓冲流的设计思想是基于装饰器设计模式的,需要在构造缓冲流的时候传入一个节点流. 缓冲输入流为什么能够提高效率? 简单一句话就是空间换时间.read方法虽然是一个字节一个字节的

IO(三)IO流之字节流与字节缓冲流(转)

在I/O类库中,java.io.InputStream和java.io.OutputStream分别表示字节输入流和字节输出流,它们都是抽象类,不能实例化,数据流中的最小单位是字节,所以叫做字节流. 一.InputStream中的读取数据的方法如下: 1 .int read() 功能:读取一个字节的数据,并且返回读到得数据,如果返回-1,则表示读到输入流的末尾. 2.int read(byte[] b) 功能:从输入流中读取一定量的字节,并将其存储在字节数组b中,返回实际读取的字节数,如果返回-

字节缓冲流 BufferedOutputStream BufferedInputStream

/*缓冲流:读取数据大量的文件时,读取的速度慢java提供了一套缓冲流 提高io流的效率 * */ package cn.lijun.demo; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; /* * 字节输入流的缓冲流 * 继承InputStream * 构造方法 */ public class BufferedInputStre