JAVA中io流详解

JAVA中io流详解

流的概念和作用

   流是一组有顺序的,有七点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传熟称为流,流的本质是数据传输,根据数据传输的特性将流抽象为各种类,方便更直观的进行数据操作。     ## IO流的分类        根据处理数据类型的不同分为:字符流和字节流    根据数据流向不同分为:输入流和输入流     ## 字符流和字节流        字符流的由来:因为数据编码的不同,而有了对字符进行高效操作的流对象。本质其实就是基于字节流读取时,去查了指定的码表。字节流和字符流的区别:

   读写单位不同:字节流一字节(bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字节。

   处理对象的不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。

   字节流在操作的时候本身时不会用到缓冲区的,时文件本身的直接操作:而字符流在操作的后会用到缓冲区,是通过缓冲区类操作文件。

   优先选用字节流。首先因为硬盘上的所有文件都是以字节的形式进行传输或者保存的,包括图片等内容。但是字符只是在内存中才会形成的,所以在开发中,字节流使用广泛。

   

输入流和输出流

   对输入流只能进行读操作,对输出流只能进行写操作,程序需要根据待传输数据的不同特性而使用不同的流。

JAVA IO流对象

 字符流:(抽象类:Reader/Writer)

  字符输入流Reader

  
     (1)FileReader文件字符输入流(直接文件名)。

     (2)BufferedReader缓冲字符输入流(参数是字符输入流或转换流)

     (3)InputStreamReader(转换流,字节转字符,第一个参数为字节缓冲流,第二个参数设置编码方式)。
  

字符输出流Writer

  
     (1)Filewriter文件字符输出流(直接文件名)

     (2)BufferedWriter缓冲字符输出流(参数是文件字节输出流)

     (3)PrintWriter字符打印输出流(功能和缓冲字符输出流一样但方法更多,后面也是缓冲字符输出流)

     (4)OutInputStreamWriter(转换流,字节转字符,参数第一个是缓冲输出流,第二个也是缓冲字符输出流)

  

字节流(OutInputSteam/InputStream抽象类)

  

   输出字节流OputSteam

     (1)FileOutputStream字节输入流(直接文件)

     (2)BufferedOnputStream字节缓冲输入流(接字节流)

     (3)PrintStream打印流(功能和缓冲字符流一样,方法更多,更常用)

     (4)DataOnputStream数据输入流(写基本数据类型+String)

     (5)ObjectInputStream对象输入流(参数为缓冲流,类要实现序列化接口)

     (6)ReandomAccessFile随机读写文件(输入输出流,有指针,科直接接文件)

  

   输入字节流IutputStream

  

     (1)FileInputStream字节输入流(直接接文件)

     (2)BufferedInputStream字节缓冲输入流(j接字节流)

     (3)DataInputStream数据输入流

     (4)ObjectInputStream对象输入流

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值