javase_io_基础总结

来源:互联网 发布:双11数据作假 编辑:程序博客网 时间:2024/06/04 01:28

最近忙着的大作业,很少有时间关注java基础,今天有些时间,贴几张图来展示一简单整理的java IO流。

图·,关于abstract class Reader:

Reader :定义字符流的抽象类

1.BufferedReader(Reader) 

   BufferedReader(Reader ,size) 

字符输入流中读取文本,缓冲各个字符,从而实现字符,数组和行的高效读取

2.CharArrayReader(char[] buf) 

   CharArrayReader(char[] bug , int offset , int length) 

实现一个可用作字符输入流的字符缓冲区

3.FilterReader:用于读取已过滤的字符流的抽象类。抽象类 FilterReader 自身提供了一些将所有请求传递给所包含的流的默认方法。

FilterReader 的子类应重写这些方法中的一些方法,并且还可以提供一些额外的方法和字段。

4.PushbackReader:允许将字符推回到流的字符流 reader

  5.InputStreamReader(InputStream)

InputStreamReader(InputStream in , Charset cs)
InputStreamReader(InputStream in, CharsetDecoder dec)

        InputStreamReader(InputStream in , String charsetName)

是字节通向字符流的桥梁,使用charset读取字节流并将其解码为字符

6.FileReader(File file)
FileReader(FileDescriptor fd)
FileReader(String fileName) 
用来读取字符文件的便捷类

7. PipedReader()
PipedReader(int pipeSize)
PipedReader(PipeWriter src)
PipedReader(PipeWriter src , int pipeSize)
传送的字符输入流

8.StringReader(String s)

其源为一个字符串的字符流

abstract class Writer:


Writer:定义写入字符的抽象类

1. BufferedWriter (Writer out)
ButteredWriter(Writer out , int size)
将文本写入字符输出流,缓冲各个字符,从而提供单个字符,数组和字符串的高效写入

     2. CharArrayWriter()
CharArrayWriter(int initialSize)

  实现一个可用作Writer的字符缓冲区。缓冲区会随向流中写入数据而自动增长

3. FilterWriter(Writer writer)
用户写入已过滤的字符流的抽象类

       4. OutputStreamWriter
OutputStreamWriter(OutputStream out)
OutputStreamWriter(OutputStream out , Charset cs)
OutputStreamWriter(OutputStream out , CharsetEncoder enc)
OutputStreamWriter(OutputStream out , String charsetName)
字符流通向字节流的桥梁,可以用指定的charset将要写入流中的字符流编码成字节,字符集可以由名称指定或者是显示给出,否则
                将接受平台默认的字符集

   5. FileWriter(File file)
FileWriter(File file , boolean append)
FileWriter(FileDescriptor fd)
FileWriter(String fileName)
FileWriter(String fileName,boolean append)
用户写入字符文件的便捷类

  6. PipedWriter()
PipedWriter(PipedReader pr)
传送的字符输出流

 7.   PrintWriter()
PrintWriter(File file)
PrintWriter(File file , String csn)
PrintWriter(OutputStream out)
PrintWriter(OutputStream out , boolean autoFlash)
PrintWriter(String fileName)
PrintWriter(Sting fileName , String csn)
PrintWriter(Writer writer)
PrintWriter(Writer out , boolean autoFlash)
向文本输出流打印对象的格式化表示

8. StringWriter()  or StringWriter(int initalSize)
一个字符流,可以用于其回收在字符流缓冲区中的输出来构造字符串


abstract class InputStream:


InputStream: 该抽象类是表示字节输入流的所有类的超类

1. AudioInputStream(InputStream stream , AudioFormat format , long length)
AudionInputStream(TargetDataLine line)
音频输入流是具有指定音频格式和长度的输入流

     2. ByteArrayInputStream(byte[] buf)
ByteArrayInputStream(byte[] buf , int offset , int length)
包含一个内部缓冲区,该缓冲区中包含从流中读取的字节。
内部计数器跟踪read方法要提供的下一个字节。

3. FilterInputStream(InputStream in)

其内部包含一些输入流,它将这些流用作其基本数据源,可以直接传输数据源或提供一些额外的功能

     4. BufferedInputStream(InputStream inputStream) 
BufferedInputStream(InputStream in , int size)

为其他输入流添加一些功能,即缓冲输入和支持mark与reset方法的能力

     5. CheckedInputStream(InputStream in , Checksum chsum)

    需要维护所读取数据校验和输入的流,校验和可用于验证输入数据的完整性

6. CipherInputStream(InputStream in)

CipherInputStream(InputStream in , Cipher c) 

加密流与解密流

7. DataInputStream(InputStream in)

数据流允许应用程序以机器无关方式从底层输入流中读取基本的java数据类型 ,应用程序可以使数据输出流写入稍后有数据输入流读取 的数据,

8. DeflaterInputStream(InputStream in) 
DeflaterInputStream(InputStream in , Deflater defl)
DeflaterInputStream(InputStream in , Delater defl , int bufLen)

   为使用"deflate"压缩格式压缩数据实现输入流过滤器

9. DigestInputStream(InputStream stream)

    使用通过流的位更新关联消息摘要的透明流

10. InflaterInputStream(InputStream in)
InflaterInputStream(InputStream in , Inflater inf)
InflaterInputStream(InputStream in , Infalter inf , int size)
为解压缩"deflate"压缩格式的数据实现流过滤器 还可以用作其他解压缩过滤器的基础

11.GZIPInputStream(InputStream in)

GZIPInputStream(InputStream in , int size)

此类为读取GZIP文件格式的压缩数据实现流过滤器

     12. ZipInputStream(InputStream in)

  此类为读取ZIP文件格式的文件实现输入流过滤器,包括对已压缩和未压缩条目的支持

13. JarInputStream(InputStream in)
JarInputStream(InputStream in , boolean verify)

    用于从任何输入流读取jar文件内容

14. ProgressMonitorInputStream(Component parentComponent , Object message , InputStream in)

   监视读取某些InputStream的进度

15. PushbackInputStream(InputStream in)

   PushbackInputStream(InputStream in , int size)

   为另外的输入流添加性能,即"推回(push back)"或"取消读取(unread)"字节的能力

16.org.omg.CORBA.portable.InputStream

是用来从CDR编组流中读取IDL类型的java API。这些方法供ORB用来解组IDL类型以及从Any中

17.org.omg.CORBA_2_3.portable.InputStream

提供从流读取所有映射的IDL类型的接口

18.ObjectInputStream() 

ObjectInputStream(InputStream in)

对以前使用的ObjectOutputStream写入的基本数据和对象进行反序列化

19. FileInputStream(File file)
FileInputStream(FileDescriptor fdobj)
FileInputStream(String name)
从文件系统中某个文件中获取输入字节,哪个文件可取决于主机环境
用于诸如图像数据之类的原始字节流

20. PipedInputStream()

PipedInputStream(PipedInputStream snk)

可以将管道输出流连接到管道输入流来创建通信管道


OutputStream

:

OutputStream:该抽象类是表示输出字节流的所有类的超类,输出流接收输出字节并将这些字节发送到某个接收器

1. ByteArrayOutputStream()

 ByteArrayOutputStream(int size)

   实现了一个输出流,其中的数据被写入一个byte数组  缓冲区会随着数据的不断写入而自动增长

2. FileOutputStream(File file)
FileOutputStream(File file , boolean append)
FileOuputStream(FileDescriptor fdobj)
FileOuputStream(String name)
FileOutputString(String name , boolean append)

是将数据写入File或者FileDescriptor的输出流,文件是否可用或能否被创建起决于基础平台

3. FilterOutputStream(OutputStream out)

是过滤输出流的所有类的超类,这些流位于已存在的输出流(基础输出流)之上,他们将已存在的输出流作为其基本数据接收器,

但是可能直接传输数据或者提供额外的功能

4. BufferedOutputStream (OutputStream out)
BufferedOutputStream(OutputStream out , int size)

实现缓冲输出流 

5.  CheckedOutputStream(OutputStream out , Checksum sum)

需要维护写入数据校验和的输出流

6.CipherOutputStream(OutputStream os)
CilpherOutputStream(OutputStream os , Cipher c)
尝试加密数据流

7.  DataOutputStream(OutputStream out)

  数据输出流允许应用程序以适当方式将基本java程序类型写入输出流中, 然后应用程序可以使用数据输入流将数据读入

8. DeflaterOutputStream(OutputStream out)
 DeflaterOutputStream(OutputStream out, Deflater def) 
DeflaterOutputStream(OutputStream out, Deflater def, int size) 

9. GZIPOutputStream(OutputStream out) 
GZIPOutputStream(OutputStream out, int size) 
 此类为使用 GZIP 文件格式写入压缩数据实现流过滤器

10.  ZipOutputStream(OutputStream out) 
以 ZIP 文件格式写入文件实现输出流过滤器

11. DigestOutputStream(OutputStream stream, MessageDigest digest) 

 使用通过流的位更新关联消息摘要的透明流

12.InflaterOutputStream(OutputStream out) 
      InflaterOutputStream(OutputStream out, Inflater infl) 
       InflaterOutputStream(OutputStream out, Inflater infl, int bufLen) 
       解压缩 "deflate" 压缩格式存储的数据实现输出流过滤器

13. PrintStream(File file) 
PrintStream(File file, String csn) 
 PrintStream(OutputStream out) 
 PrintStream(OutputStream out, boolean autoFlush) 
PrintStream(OutputStream out, boolean autoFlush , String encoding) 
PrintStream(String fileName) 
PrintStream(String fileName, String csn) 
其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式

14.  LogStream(Deprcated)
提供一种记录错误的机制,这一机制专门用来监视系统运行情况
 

  15. ObjectOutputStream() 
ObjectOutputStream(OutputStream out) 

将 Java 对象的基本数据类型和图形写入 OutputStream。可以使用 ObjectInputStream 
读取(重构)对象。通过在流中使用文件可以实现对象的持久存储。
如果流是网络套接字流,则可以在另一台主机上或另一个进程中重构对象。 

16.org.omg.CORBA.portable.OutputStream

用来将 IDL 类型写入 CDR 编组流的 Java API

  17.org.omg.CORBA_2_3.portable.OutputStream
提供将所有映射的 IDL 类型写入流的接口。它扩展 org.omg.CORBA.portable.OutputStream 
并定义 CORBA 2.3 定义的新方法。

18. PipedOutputStream() 
PipedOutputStream(PipedInputStream snk) 
可以将管道输出流连接到管道输入流来创建通信管道。管道输出流是管道的发送端





0 0
原创粉丝点击