拷贝音频、视频、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();
    }
}
相关推荐
小鸡吃米…17 小时前
Python 列表
开发语言·python
kaikaile199517 小时前
基于C#实现一维码和二维码打印程序
开发语言·c#
我不是程序猿儿17 小时前
【C#】画图控件的FormsPlot中的Refresh功能调用消耗时间不一致缘由
开发语言·c#
rit843249917 小时前
C# Socket 聊天室(含文件传输)
服务器·开发语言·c#
嘉琪00118 小时前
Vue3+JS 高级前端面试题
开发语言·前端·javascript
xunyan623418 小时前
面向对象(下)-接口的理解
java·开发语言
遥不可及~~斌18 小时前
Java 面试题集 -- 001
java·开发语言
2501_9216494918 小时前
如何获取美股实时行情:Python 量化交易指南
开发语言·后端·python·websocket·金融
集智飞行19 小时前
c++函数传参的几种推荐方式
开发语言·c++
鼾声鼾语19 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab