文件字节流

文件字节流

文件输入字节流:

package com.tiedandan.IO流.文件字节流;
/**
 * FileInputStream 文件字节输入流
 *流:存储设备与内存之间传输数据的通道。程序在内存中运行,内存相当于数据处理机。
 *
 */
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class FileInputStream1 {
    public static void main(String[] args) throws IOException {
        //创建文件字节输入流,并且指定磁盘上文件输入路径。
        FileInputStream fis = new FileInputStream("d:\\zhtt.txt");
        //读取文件fis.read();
        //fis.read()一次只能读一个字节,而且会有一个返回值,当返回值为-1时,说明文件读入完毕
        //可以用循环读出文件中所有字节 方法一:
//        int data = 0;
//        while ( (data=fis.read())!=-1){
//            System.out.println((char)data);//data存储的时ascii编码。需要转换为字符后输出。
//        }
//        fis.close();
//        System.out.println("------执行完毕!------");
        //读取字节,方法2
        byte[] buf  =new byte[3];
        int count =0;
        while ((count=fis.read(buf))!=-1){
            System.out.println(new String(buf,0,count));
        }
        fis.close();
        System.out.println("------执行完毕!------");

    }
}

运行结果:

ada
wda


------执行完毕!------

文件输出字节流:

package com.tiedandan.IO流.文件字节流;

import java.beans.PropertyVetoException;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;

/**
 * 文件输出字节流
 */
public class FileOutputStream1 {
    public static void main(String[] args) throws IOException {
        FileOutputStream fs1= new FileOutputStream("d:\\bbb.txt",true);//true作用:让每次执行写入时的数据不会覆盖上一次写的数据,而是接着上次的数据写入。

        //单个写入
        fs1.write('a');
        fs1.write(98);//98是b的字节码
        fs1.write('c');
        //一次性写入
        String  a ="helloworld";
        fs1.write(a.getBytes());
        //关闭流
        fs1.close();
        System.out.println("-----执行完毕!-------");


    }
}

运行结果:


------执行完毕!------

posted on 2021-11-21 16:50  张铁蛋666  阅读(49)  评论(0编辑  收藏  举报

导航