常用API-io流

    1.出现的原因:

          需要有一个东西来将数据写入文件,或者将文件中的数据获取使用

     2.解释IO流

          中文:全程input output Stream---输入输出流

        为什么是流?

           因为数据的流动形态---与水流相似

        为什么有输入输出流?

           参照物:内存

           输入输出流:其他存储介质数据到内存--输入流

                                 内存到其他存储介质数据--输出流

           其他存储介质
 
                 硬盘 优盘 光盘 网盘 网络

    3.Java给我们提供的类有哪些分类说明

           输入输出

               输入流:InputStream和Reader

               输出流:outputString和Writer

           数据类类型

               字节流【按字节处理数据】InputStream  outputStream 

                     处理:图片 声音 视频等

               字符流【按照字符进行数据处理】:Reader和Writer

                     处理:文本

               包装流【缓冲】:Buffered+对应的流

               转换流:InputStreamReader  OutputStreamWriter 

               打印流:PrintWirter

    4.字节流的输入输出

           1)输入:InputStream  抽象类

                所有字节输入流的超类

                    键盘输入流

                    FileInputStream  文件输入流

                    FileInputStream:文件资源的读取 主要读取图片等原始字节文件

                用法:

                    普通的类  给定构造方法 没有静态方法 创建对象调用方法

                    使用步骤:

                      1.创建对象

                      2.定义缓冲数组--指定每次读取多少字节  不指定  每次读取一个字节

                      3.读取数据--使用循环

                      4.处理数据

                      5.关闭流

                键盘输入的操作---使用输入流模拟Scanner


           2)输出流:OutputStream抽象类

                    含义:将数据以字节的方式发送出去

                    子类:FileOutputStream

                    FileOutputStream:将内容写入文件


    5. 字符流的输入输出

              用于文本的数据处理

              输入流:

                    Reader:读取字符  抽象 子类:FileReader

                    FileReader:类 读取文本文件数据

              输出流:

                    Writer:读取字符  抽象 子类:FileWriter

                    FileWriter:文本的写出

    6.包装流【缓冲流】

               建立缓冲区,以便于提高续写速度

               类:BufferedWrier    BufferedReader

                   BufferedInputStream BufferedOutputStream

           总结:加了缓冲区之后除了BufferedReader类,其他的操作没有什么变化

    7.转换流

             InputStreamReader OutputStreamWriter

             字节流转换成字符流,进行高效方便操作

    8.对象流--序列化

           序列化:格式化--按照一定格式规范进行存储,需要统一标识
              
                   存储的对象对应的类必须实现序列化接口---java.io.Serializable

           提供了两个类

                   ObjectinputStream        ObjectoutputStream

            重点:对象流和文件流

                       后面使用流处理文件资源的时候,记得使用包装流打包

    9.文件存储数据
   
           虽然解决了持久化存储数据的问题,但是读取数据很不方便,筛选数据麻烦

           文件存储数据不安全

           后期会有技术解决--第三方好事之徒--开发一款软件--数据可软件        

           数据处理存储方便

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值