Java-字节输入输出。(新手用于记录每天的作业)

Java-字节输入输出。(新手用于记录每天的作业)


参考手册:


 

BufferedInputStream

 


BufferedOutputStream

 


 

 


实例:

import java.io.*;
/*
 *  文件的复制方式
 *  1 字节流读写单个字节
 *  2 字节流读写字节数组
 *  3 字节流缓冲区 读写单个字节
 *  4 字节流缓冲区读写字节数组
 */
public class Zjsrsclx {
    public static void main(String[] args) throws Exception {
        long e = System.currentTimeMillis();
        File src = new File("D:\\ja.txt");
        File dasc = new File("C:\\ja.txt");
        long c = System.currentTimeMillis();
        System.out.println(e-c);
        lx4(src,dasc);
    }

    private static void lx4(File src, File dasc) throws Exception {
        // 4 字节流缓冲区读写字节数组
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream(src));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(dasc));
        byte[] b = new byte[1024*10];
        int len = 0;
        while((len = bis.read(b))!=-1){
            bos.write(b,0,len);
        }
        bis.close();
        bos.close();
    }

    private static void lx3(File src, File dasc) throws Exception {
        //3 字节流缓冲区 读写单个字节
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream(src));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(dasc));
        int len = 0;
        while((len = bis.read())!=-1){
            bos.write(len);
        }
        bis.close();
        bos.close();
    }

    private static void lx2(File src, File dasc) throws Exception {
        //2 字节流读写字节数组
        FileInputStream fis = new FileInputStream(src);
        FileOutputStream fos = new FileOutputStream(dasc);
        int len = 0;
        byte[] b = new byte[1024*10];
        while ((len = fis.read(b))!=-1){
            fos.write(b,0,len);
        }
        fis.close();
        fos.close();
    }

    private static void lx1(File src,File dasc) throws Exception {
        //1 字节流读写单个字节
        //复制粘贴文件。
        FileInputStream fis = new FileInputStream(src);
        FileOutputStream fos = new FileOutputStream(dasc);

        int len = 0;
        while ((len = fis.read())!=-1){
           fos.write(len);
        }
        fis.close();
        fos.close();
    }

}

 


打印结果:


lx1:


lx2:


lx3:


lx4:

 

posted @ 2019-03-26 18:21 浪子。 阅读( ...) 评论( ...) 编辑 收藏
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我会尽力回答你的问题。首先,让我们来看一下字节数据的输入输出基础知识。 在Java中,我们可以使用InputStream和OutputStream类来处理字节数据的输入输出。其中,InputStream是一个抽象类,表示输入字节流的基本类。OutputStream同样是一个抽象类,表示输出字节流的基本类。这两个类都是Java IO库中的基本类,它们提供了一系列的方法来处理字节数据的输入输出。 下面是一个简单的例子,演示如何使用InputStream和OutputStream类来读取和写入字节数据: ```java import java.io.*; public class ByteIOExample { public static void main(String[] args) { byte[] data = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33}; // 写入字节数据到文件 try (OutputStream output = new FileOutputStream("hello.txt")) { output.write(data); } catch (IOException e) { e.printStackTrace(); } // 从文件中读取字节数据 try (InputStream input = new FileInputStream("hello.txt")) { byte[] buffer = new byte[1024]; int length = input.read(buffer); String message = new String(buffer, 0, length); System.out.println(message); } catch (IOException e) { e.printStackTrace(); } } } ``` 在这个例子中,我们首先创建了一个byte数组,表示要写入文件的数据。然后,使用OutputStream类将数据写入到名为"hello.txt"的文件中。接着,使用InputStream类从文件中读取数据,并将其存储在一个byte数组中。最后,将这个byte数组转换成字符串并打印出来。 希望这个例子能够帮助你更好地理解字节数据的输入输出。如果你有任何其他问题,可以继续问我。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值