Day21第二十一天 java基础 -------IO流

------- android培训java培训、期待与您交流! ----------

1、ObjectinputStream ObjectOutputStream 为直接操对象的流,将堆内存中的数据存储在硬盘中,这个也就是
我们所说的对象持久化的概念
2、ObjectOutputStream 构造方法是(outputStream out)可以直接操作基本数据类型,
3、write和writeInt的区别:
 write只能写最低8位 只能写出一个字节出去。
 writeInt可以写出4个字节出去,操作数据类型可以把整数的4个8位全部都写出去。
 writeObject(object obj)是传进去一个对象,操作对象的一个方法。
没有方法的接口称为标记接口。
要想实现对象的序列化的操作,类必须实现serializable接口此接口为标记接口。
静态方法是不能实现序列化的,因为静态的方法存在于方法区中,所以序列化只能是实现堆内存中的内容
如果想对非静态成员不进行序列化只需在非静态前加入关键字transient 保证其值在堆内存中存在,而不是在文本文件中存在。
管道流PipedInputStream  PipedOutputStream  可以把输入和输出直接进行连接
使驶输入和输出连接起来 (1)、要么进行构造函数
   (2)、要么使用空构造函数并使用connect方法。
RandomAccessFile随进访问文件:
 该类不算作是IO体系中的子类,可以直接继承Object 但是它是IO成员,因为它具备了读写的功能能,内部封装了一个数组
 而且通过标志位对数组元素进行操作,可以通过getFilePoint 获取标志位置,同时可以通过seek改变标志位其实完成了
 读写就是内部封装了字节输入流和输出流。
通过构造构造函数可以看出来,只能操作文件,而且操作文件还有模式。
可以通过标志位的偏移来访问到数组中的任何一个数据。seek无限制的移动,跳过指定的字节数,skipBytes()只能向前跳
随机的读写也就是移动了标志位的位置,来进行读写数据,而且还可以把指定位置的文件进行覆盖。
模式有:r(只读) rw(读写)
而且该对想的构造函数要操作的文件不存在会自动的创建,如果存在不会覆盖。
如果模式为r不会创建文件,只会读取一个已经存在的文件,如果该文件不存在,则会报出异常
如果模式为rw 操作的文件不存在 会哦自动创建,如果存在则不会覆盖
可以实现数据的分段写入,可以实现多线程的下载
操作基本数据类型,DateInputStream DateOutoutStream 可以用于操作基本数据类型的流对象。
如果是仅仅操作的是基本的数据类型就要用这个类。因为它直接操作的基本数据类型。
writeUTF(String str)如果是用的这种方法写入的话 只能用这种方法进行读出。
用于操作字节数组的流对象。
ByteArrayInputStream :在构造的时候,需要接收数据源,。而且数据源是一个字节数组。
ByteArrayOutputStream: 在构造的时候,不用定义数据目的,因为该对象中已经内部封装了可变长度的字节数组。
这就是数据目的地。
因为这两个流对象都操作的数组,并没有使用系统资源。
所以,不用进行close关闭。
内存的源和目的都是ArrayStream
对数据元素之有设置和获取,也就是向东与读和写(io中)
用流的思想来操作数组:
ByteArrayInputStream bis = new ByteArrayInputStream("abcs".getBytes()) //数据源
ByteArrayOutputStream bos = new ByteArrayOutputStream();  //目的
字节编码:字符流的出现时为了方便操作字符 更重要的是加入了编码的转换 通过子类转换流来完成的
子类通过构造的时候加入了字符集
编码:字符串变成字节数组。
解码:字节数组变成字符串。
在编码的时候用的码表,在解码的时候并没有用到,而是用到的是其他的码表,这样就需要在使用其他的码表再次的进行编码
然后再按照最开始编码的码表进行解码。

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值