如何使用IO流将一张照片复制到另外一个文件

什么是IO流

IO指的是Input/Output,IO流:输入输出流。 统称为数据流(IO Stream)

在Java程序中,对于数据的输入 / 输出操作以流的方式进行;流是从起源到接收的有序数据。JDK提供了各种各样的流类,用以获取不同种类的数据;

IO流的分类

IO流可以根据流向的不同分为两类:一种是输入流,另外一种是输出流。输入流和输出流的区别就在与程序从中是读取数据还是写入数据。输入流通俗的来说就是可以电脑硬盘上面的文件读取到电脑程序中,而输出流就是将电脑程序的数据写入电脑硬盘中。

按流分类可以分为上面两种,还可以按照数据的传输的单位来分,可以分为字节流和字符流。

顾名思义字节就是按照字节为单位来传输数据,字符就是按照字符为单位来传输数据。

IO流的基本类

字节输入流:FileInputStream,字节输出流:FileOutputStream,字符输入流:FileReader,字符输出流:FileWriter。下面是代码展示。

FileInputStream fis = new FileInputStream("");//创建输入流对象
FileOutputStream fos = new FileOutputStream("");//创建输出流对象

FileReader fileReader = new FileReader("");//创建一个字符输入流对象
FileWriter fileWriter = new FileWriter("");//创建一个字符输入流对象

注意:括号内需要写入的是要读取的文件目录。

照片复制代码演示

      FileOutputStream fos = new FileOutputStream("D:\\新图片\\(kaobei)QQ图片20230523174511.jpg");//建立一个文件输入流
        File file = new File("D:\\新图片\\QQ图片20230523174511.jpg");建一个文件对象
       byte[] bytes = new byte[(int) file.length()];//利用byte来控制每次读取的字节次数,file.length()读取的是文件的长度,因为最后赋值是long型我们用一个(int)将其强转
        int read ;创建一个read来接收图片
        while((read=fis.read(bytes))!=-1)//判断是否还有数据{
            fos.write(bytes,0,read); //写入数据

运行后结果展示

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值