首页 > 编程语言 >Java拾贝第十一天——IO流之字节流复制图片、视频

Java拾贝第十一天——IO流之字节流复制图片、视频

时间:2023-10-25 21:44:20浏览次数:41  
标签:第十一天 file2 file1 Java 拾贝 源文件 File new 字节

Java拾贝不建议作为0基础学习,都是本人想到什么写什么

文件在硬盘或传输时都以字节的形式进行传输。包括图片、视频等。

思路:

先定位源文件
file1作为源文件,file2作为复制文件

使用字节流输入流读取file1
使用字节流输出流输出file2

关闭流。

定位源文件,我特地翻出来一张学校对面理发店会员卡。
image

磁盘路径为D:\IOtest\vip.jpg

代码如下:

    public static void main(String[] args) {
        //定位源文件
        File file1 = new File("D:" + File.separator + "IOtest" + File.separator + "vip.jpg");
        File file2 = new File("D:" + File.separator + "IOtest" + File.separator + "fake-vip.jpg");

        try {
            FileInputStream inputStream = new FileInputStream(file1);
            FileOutputStream outputStream = new FileOutputStream(file2);//依次开启字节输入和输出流。

            byte[] bytes = new byte[1024];//一次读取1024字节
            int temp;

            while ( (temp=inputStream.read(bytes)) != -1 ){
		//read()返回-1为文件读取完毕
                outputStream.write(bytes,0,temp);
            }

            outputStream.close();//后开启的流先关闭
            inputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

代码运行后,D:\IOtest目录如下:
image

相同的,复制视频更改file对象就好

标签:第十一天,file2,file1,Java,拾贝,源文件,File,new,字节
From: https://www.cnblogs.com/Ocraft/p/17788206.html

相关文章

  • C# 在流行度指数上将超过Java
    2023年10月最新的TIOBE编程语言流行指数表明:C#和Java之间的差距从未如此之小,目前,差异仅为1.2%,如果趋势保持这种状态,C#将在大约2个月内超过Java,TIOBESoftware首席执行官PaulJansen的认为,C#的崛起是以牺牲Java为代价的-Oracle和Kotlin是Java衰落的主要因素。TIOBE指数每月跟踪编......
  • 在Java中,public、protected、包私有(package-private)和私有(private)之间的区别是什么?
    内容来自DOChttps://q.houxu6.top/?s=在Java中,public、protected、包私有(package-private)和私有(private)之间的区别是什么?在Java中,在使用class和interface以及处理继承时,是否有明确的规定何时使用每个访问修饰符,即默认(包私有)、public、protected和private?官方教程(http://doc......
  • java学习每日总结-第五天
    第五天学习//美好的一天,从学java开始今天首先是tomcat的体验,其实这个玩意很早以前就一直在用了,不过吧对他的理解约等于没有,现在知道了tomcat是一个web服务器,用来连接网页和服务器。  学完tomcat之后,终于来到了我之前一直缺少的一部分重要的知识,servlet!  学习了几个小......
  • maven创建普通java项目访问mysql-仅jdbc
    已知:1、maven对普通Java项目的创建,参考 https://www.cnblogs.com/wanjinliu/p/17706089.html 。2、java常规访问mysql数据库,需要用到jdbc驱动。调用的jar包,最新为“mysql-connector-j”--这个名字可以不记得,看见能认识它就行。包、类入门用法,参考 https://www.cnblogs.com/......
  • 一、认识java以及环境变量
    1、Java是一门面向对象的语言,分为:SE、ME、EE;JavaME是一种高度优化的Java运行环境,主要针对消费类电子设备的,例如蜂窝电话和可视电话、数字机顶盒、汽车导航系统等等;J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入式系统开发,如手机和PDA的编程;J2EE是Jav......
  • 学习一下Java的ArrayList和contains函数和扩容机制
    起因在Leetcode上做题写了两种暴力解法,但是执行效率上不太一样。时间上差很远,内存虽然差不多但是前者击败30%,后者击败94%。这两种解法区别是用一条ArrayList还是两条来存数据,所以contains虽然执行次数一样但是检测的长度上不一样,而且ArrayList的扩容次数也不一样,所以学习一下。......
  • java笔记——面向对象
    1.概述:面向对象是基于面向过程的编程思想举例:把大象装进冰箱2.开发:不断的创建对象,使用对象,指挥对象做事情3.面向对象特征:封装,继承,多态4.类和对象的关系:类是一组相关的属性和行为的集合对象是该类事物的具体体现5.用class描述事物:成员变量就是事物的属性,成员方法就......
  • Java笔记——数组静态初始化开始
    一维数组:静态初始化:定义格式:(1)数据类型[]数组名=new数组类型[](2)数组类型[]数组名={元素1,元素2,.....}练习:数组元素逆序:publicstaticvoidmain(String[]args){int[]arr={1,2,3,4,5,6,7,8,9,10};System.out.println("逆序前:");for(inti......
  • 超市自助付款系统 JAVA开源项目 毕业设计
    https://gf.bilibili.com/item/detail/1103977029为了帮助小白入门Java,博主录制了本项目配套的《项目手把手启动教程》,希望能给同学们带来帮助。一、摘要本博客设计实现了超市购物自助付款系统,该系统采用最新的技术,包括Vue以及SpringBoot等技术方法,实现了快速精准的商品结算,同时,......
  • 校园二手交易系统 JAVA开源项目 毕业设计
    https://gf.bilibili.com/item/detail/1103978029为了帮助小白入门Java,博主录制了本项目配套的《项目手把手启动教程》,希望能给同学们带来帮助。一、摘要随着国家生产力的发展,越来越多商品被生产了出来,超过了人们的实际消耗量,所以产生了大量闲置的商品,这些闲置商品有些被遗弃、有......