IO流(一)

目录

一.关于IO流

二.字节流

1.FIleOutputStream(字节输出流)

1.书写步骤:

1.创建字节输出流对象

2.写数据

3.释放资源

2.书写数据的三种方式

3.换行写入数据:

4.续写

2.FileInputStream(字节输入流)

1.书写步骤

1.创建字节输入流的对象

2.读取数据

3.释放资源

2.循环读取


一.关于IO流

IO流:存储和读取数据的解决方案

i:input输入  o:output

IO流的作用;用于读写数据(本地文件,网络);

IO流的分类

纯文本文件:用windows系统自带的记事本打开并且人类能读懂的文件

例如txt文件,md文件,xml文件,lcr文件

注意:这里面的输入输出的主语是     程序

二.字节流

1.FIleOutputStream(字节输出流)

操作本地文件的字节输出流,可以把程序的数据写入本地文件中

1.书写步骤:

1.创建字节输出流对象

参数是字符串或者file对象都可以

如果文件不存在就会创建,但是要保证父类文件是存在的

如果文件已经存在,构造方法就会清空文件

2.写数据

write的方法是整数,实际上是会根据ASCII表进行转换

3.释放资源

每次使用完流都要进行释放资源

   //创建对象
        FileOutputStream fos=new FileOutputStream("a.txt");
        //写入数据
        fos.write(97);
        //释放数据
        fos.close();

2.书写数据的三种方式

FileOutputStream fos=new FileOutputStream("a.txt");
        //写出数据
        fos.write(99);
        //释放资源
        fos.close();
        byte [] bytes={97,98,99,100};

        FileOutputStream fos=new FileOutputStream("a.txt");

        fos.write(bytes);

        fos.close();
byte [] bytes={97,98,99,100,101,103};

        FileOutputStream fos=new FileOutputStream("a.txt");

        fos.write(bytes,0,3);
        //参数表示:   数组   起始索引    写入的个数

        fos.close();

3.换行写入数据:

想要换行只需要写一个换行符即可

windows操作系统:\r\n 

linux操作系统:\n

Mac操作系统:\r

FileOutputStream fos=new FileOutputStream("a.txt");
        //写出数据
        String str1="wohaoshuai";
        byte[] bytes1 = str1.getBytes();
        fos.write(bytes1);

        String str2="\r\n";
        byte[] bytes2 = str2.getBytes();
        fos.write(bytes2);

        String str3="shangmianshuodedui";
        byte[] bytes3 = str3.getBytes();
        fos.write(bytes3);


        fos.close();

4.续写

FileOutputStream有两个参数,第二个就是开关,true打开续写,false关闭续写

FileOutputStream fos=new FileOutputStream("a.txt",true);
        //写出数据
        String str1="wohaoshuai";
        byte[] bytes1 = str1.getBytes();
        fos.write(bytes1);

        fos.write(10);

        String str3="shangmianshuodedui";
        byte[] bytes3 = str3.getBytes();
        fos.write(bytes3);


        fos.close();

2.FileInputStream(字节输入流)

1.书写步骤

1.创建字节输入流的对象

如果文件不存在,直接报错

2.读取数据

一次读一个字节,读取出来的数据是在ASCII上对应的数字

读到文件末尾了就会返回-1

3.释放资源
     FileInputStream fis=new FileInputStream("a.txt");
        int r1 = fis.read();
        //如果没有数据读取则read的返回值是-1
        System.out.println(r1);
        
        
        fis.close();

2.循环读取

       FileInputStream fis=new FileInputStream("a.txt");
        int b=0;
        while((b= fis.read())!=-1){
            System.out.println((char)b);
        }
        fis.close();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨小瑾的鸭舌帽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值