Java 输入输出 的 基本原理及示例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

来自:

亿淘城_减肥榜的个人笔记

xx你的支持(*^__^*)嘻嘻……

Java I/O原理

→基本概念:

I/O(Input/Output)

数据源(Data Source)

数据xx(Data Sink)

→Java中把不同的数据源与程序间的数据传输都抽象表述为“流”(Stream),java.io包中定义了多种I/O流类型实现数据I/O功能。

→I/O流分类:

输入流(Input Stream)和输出流(Output Stream)

节点流(Node Stream)和处理流(Processing Stream)

字符流(Character Stream)和字节流(Byte Stream)

#输入流(Input Stream)和输出流(Output Stream)

1.输入流只能从中读取数据,而不能向其写数据;

2.输出流则只能向其写出数据,而不能从中读取数据;

3.特例:

java.io.RandomAccessFile类。

#节点流(Node Stream)和处理流(Processing Stream)

1.节点流直接连接到数据源

2.处理流是对一个已存在的流的连接和封装,通过所封装的刘的功能

调用实现增强的数据读写功能,处理流并不直接连到数据源#字符流(Character Stream)和字节流(Byte Stream)

1.字节流以字节为单位进行数据传输,每次传送一个或多个字节。

2.字符流以字符为单位进行数据传输,每次传送一个或多个字符。

※Java命名惯例:

凡是以InputStream 或OutputStream结尾的类型均为字节流,凡是以Reader或Writer 结尾的均为字符流。

InputStream

抽象类java.io.InputStream 是所有字节输入流类型的父类,该类中定义了以字节为单位读取数据的基本方法,并在其子类中进行了分化和实现。

◆三个基本的read方法:

Int read()

Int read(byte[] buffer)

Int read(byte[] buffer,int offset,int length)

◆其它方法:

Void close()

Int available()

Skip(long n)

Boolean markSupported()

Void mark(int readlimit)

Void reset()

FileInputStream

ObjectInputStream

PipedInputStream

SequenceInputStream

InputStream DataInputStream

PushbackInputStream BufferedInputStream LineNumberInputStream FilterInputStream

StringBufferInputStream

ByteArrayInputStream

OnputStream

Java.io.OutputStream 与java.io.InputStream对应,是所有字节输出流类型的抽象父类。

◆三个基本的write方法:

Int write ()

Int write (byte[] buffer)

Int write (byte[] buffer,int offset,int length)

◆其它方法:

Void close()

Void flush()

FileOutputStream

ObjectOutputStream

OutputStream PipedOutputStream DataOutputStream

FilterOutputStream PrintStream

ByteArrayOutputStream

BufferedOutputStream Reader

抽象类java.io.Reader是所有字符输入流类型的父类,其中声明了用于读取字符流的有关方法。

◆三个基本的read方法:

Int read()

Int read(byte[] buffer)

Int read(byte[] buffer,int offset,int length)◆其它方法:

Void close()

Int available()

Skip(long n)

Boolean markSupported()

Void mark(int readlimit)

Void reset()

Writer

抽象类java.io.Writer是所有字符输出流类型的父类。

◆五个基本的write方法:

Void write (int c)

Void write (char[] buffer)

Void write (char[] buffer,int offset,int length)

Void write(String string)

Void write(String stirng ,int offset,int length)

◆其它方法:

Void close()

Void flush()

常用的I/O流类型

(1)

FileInputSteam/FileOutputSteam

FileInputStream用于读取本地文件中字节数据。

FileOutputStream用于将字节数据写出到文件。

FileReader/FileWriter

FileReader用于以字符为单位读取文本文件。

FileWriter用于将字符数据写出到文本文件中。

BufferedReader/BufferedWriter

BufferedReader用于缓冲读取字符。

BufferedWriter则提供字符的缓冲写出功能。

常用的I/O流类型

(2)

InputStreamReader

1.InputStreamReader可封装字节输入流并从中读取字节数据,然后将之转换为字符。

2.转换时所使用的字符编码可以再构造方法中显示指定,也可以使用平台的默认字符编码。其构造方法格式为:

相关文档
最新文档