字节输出流写多个字节的方法

1. 写出字节: write(int b) 方法,每次可以写出一个字节数据,代码使用演示:

//创建FileOutputStream对象,构造方法中绑定要写入数据的目的地
        FileOutputStream fos = new FileOutputStream(new File("day09_IOAndProperties\\b.txt"));
        //调用FileOutputStream对象中的方法write,把数据写入到文件中
        //在文件中显示100,写个字节
        fos.write(49);
        fos.write(48);
        fos.write(48);

2. 写出字节数组: write(byte[] b) ,每次可以写出数组中的数据,代码使用演示:

byte[] bytes = {
    
    65,66,67,68,69};//ABCDE
            //byte[] bytes = {-65,-66,-67,-68,-69};//烤郊?
            fos.write(bytes);

3. 写出指定长度字节数组: write(byte[] b, int off, int len) ,每次写出从off索引开始,len个字节,代码
使用演示:

/*
                 public void write(byte[] b,int off,int len) :把字节数组的一部分写入到文件中
                 int off:数组的开始索引
                 int len:写几个字节
            */
            fos.write(bytes,1,2);//BC

整体代码:

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.Array;
import java.util.Arrays;

/*
    一次写多个字节的方法:
        public void write(byte[] b):将b.length字节从指定的字节数组写入此输出流
        public void write(byte[] b,int off,int len) : 从指定的字节数组写入len字节,从偏移量off开始输出到此输出流
*/
public class Demo02OutputStream {
    
    
    public static void main(String[] args) throws IOException {
    
    
        //创建FileOutputStream对象,构造方法中绑定要写入数据的目的地
        FileOutputStream fos = new FileOutputStream(new File("day09_IOAndProperties\\b.txt"));
        //调用FileOutputStream对象中的方法write,把数据写入到文件中
        //在文件中显示100,写个字节
        fos.write(49);
        fos.write(48);
        fos.write(48);

        /*
             public void write(byte[] b):将b.length字节从指定的字节数组写入此输出流
             一次写多个字节:
                如果写的第一个字节是正数(0-127)显示的时候会查询ASCII表
                如果写的第一个字节是负数,那第一个字节会和第二个字节,两个字节组成一个中文显示,查询系统默认码表(GBK)
        */
            byte[] bytes = {
    
    65,66,67,68,69};//ABCDE
            //byte[] bytes = {-65,-66,-67,-68,-69};//烤郊?
            fos.write(bytes);

            /*
                 public void write(byte[] b,int off,int len) :把字节数组的一部分写入到文件中
                 int off:数组的开始索引
                 int len:写几个字节
            */
            fos.write(bytes,1,2);//BC

            /*
                写入字符的方法:可以使用String类中的方法把字符串,转换为字节数组
                    byte[] getBytes() 把字符串转换为字节数组
            */
            byte[] bytes2 = "你好".getBytes();
            System.out.println(Arrays.toString(bytes2));//[-28, -67, -96, -27, -91, -67]
            fos.write(bytes2);

        //释放资源
        fos.close();
    }
}

在这里插入图片描述
结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44664432/article/details/108491265