Javo 基础 流的分类

字节流inputStream outStream

字符流 reader writer 针对Java语言而言 换算与截取

对象流

内存存东西以字节为单位 java处理字符串以字符单位 一个字符等于两个字节

 

read() 返回一个整数 占4个字节 读入的字节占第一位字节 后面3个字节为数字0

 当读取到达流的末尾,则返回 -1。后面3个字节为数字为-1

字节流属于低层次的流

如果因为流位于文件末尾而没有可用的字节,则返回值 -1;否则,至少读取一个字节并将其存储在 b 中

 

字符流 一次性读取一个字符

缓冲区的概念 提高效率 硬盘内存的差异 内存 半导体 总线数

批量操作 时间与单个字节保存硬盘的时间一样

缓冲区可以大大文件输出输入的效率

自己能提供数据来源叫源流

加工流 过滤流 自己不提供数据来源 提取别的流进行加工 增加操作数据的方法

 

 

 

流类的比较 暗藏一个指针

 

字节流

字符流

输入流

InputStream

Reader

方法

int read()字节1/4

int read()字符2/4

 

int read(byte[] b)

从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中。以整数形式返回实际读取的字节数。

int read(char[] b)

 

将字符读入数组。

 

read(byte[] b, int off, int len)
          将输入流中最多 len 个数据字节读入 byte 数组。

read(byte[] b, int off, int len)

b - 读入数据的缓冲区。

off - 数组 b 中将写入数据的初始偏移量。

len - 要读取的最大字节数。

 

 

Long skip(long n)

Long skip(long n)

 

Void close()

Void close()

源流类

 

File

Piped       InputSteam

Bytearray

Stringbuffer   来自系统

File

Piped           Reader

Chararray

Stringbuffer

过滤流

BufferedInputStream

PushbackInputStream(uread)

DataInputStream

ObjectInputStream

BufferedReader

PushbackReader(uread)

输出流

OutputStream

Writer

源流类

File

Piped       OutputSteam

Bytearray

Stringbuffer

File

Piped           Writer

Chararray

Stringbuffer

过滤流

BufferedOutputSteam

PushbackOutputSteam (uread)

DataOutputSteam

ObjectOutputSteam

BufferedWriter(newLine)

二进制文件 换行

PushbackWriter (uread)

 

void close()

void close()

 

void flash() 强写刷新该流的缓冲。如果该流已保存缓冲区中各种 write() 方法的所有字符,则立即将它们写入预期目标。然后,如果该目标是另一个字符或字节流,则将其刷新。因此,一次 flush() 调用将刷新 Writer 和 OutputStream 链中的所有缓冲区

void flash()

方法

void write(int)

void write(byte[])

void write(byte[] b, int off, int len)

void write(int)

void write(char[] b, int off, int len)

void write(char[])

void write(String str)

void write(String str,int a,int b)


          写入字符串/一部分

 



 

 混合编码

管道资源占用系统资源

File 用来对文件和目录进行操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值