拷贝音频、视频、word等二进制文件的实现方法,不掉帧

拷贝音频、视频、word等二进制文件的实现方法:

演示使用BufferedOutputStream 和 BufferedInputStream 使用

使用他们,可以完成二进制文件

思考:字节流可以操作二进制文件,可以操作文本文件吗?True

java 复制代码
public class BufferedInputStreamCopy_ {
    public static void main(String[] args) throws IOException {
        String srcPath = "E:\\demo.java";
        String destPath = "E:\\Copy.java";
        byte[] buf = new byte[1024];
        int bufLen = 0;
        //创建两个Buffered数据流
        BufferedInputStream bI = null;
        BufferedOutputStream bO = null;
        //创建两个字节流
        FileInputStream fIs =new FileInputStream(srcPath);
        FileOutputStream fOs = new FileOutputStream(destPath);
        bI= new BufferedInputStream(fIs);
        bO =new BufferedOutputStream(fOs);
        //当返回-1时,就表示文件读取完毕
        while((bufLen=bI.read(buf))!=-1){
//            bO.write(buf,0,bufLen);
            bO.write(buf);
            /**当拷贝二进制文件时,只能使用字节流进行操作
             * 读取多少,就写入多少,使用write(byte[] b,int off,int len);
             * 如果使用write(byte[] b);代表每次都写入1024个字节,效果基本一致,建议第一种
             */
        }
        System.out.println("文件拷贝成功!");
        bI.close();
        bO.close();
    }
}
相关推荐
FfHUCisI9 小时前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI9 小时前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
lemon_sjdk10 小时前
ObjectProperty
java·开发语言·算法
大模型码小白10 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
hh95010 小时前
Agent Plan x DeepSeek Harness:Agent 供应链安全与第三方插件审计
java·开发语言·安全·agent plan·adg成都社区·adg社区
Behaviour11 小时前
Unity UI循环列表UIScrollViewContent实现
ui·unity·c#·游戏引擎
「QT(C++)开发工程师」11 小时前
C++ std::move 详解
开发语言·c++
matlab代码11 小时前
基于matlab的玉米种子计数设计(GUI界面)【源码58期】
开发语言·matlab
c#上位机11 小时前
C#上位机项目实战——C#的dll项目编译时拷贝到指定目录下
开发语言·c#