Java中的输入与输出流分析
发布时间:2021-11-21 19:25:26 所属栏目:教程 来源:互联网
导读:输入与输出流 在Java中,信息的输入和输出(I/O)是程序设计语言中的一个很重要的部分。在任何程序中都离不开信息的输入和输出。在面向对象语言中,输入和输出都是通过数据流来实现的。处理数据流的类主要被放在包java.io中。因为前面已经讲过I/O流的基本知识
输入与输出流 在Java中,信息的输入和输出(I/O)是程序设计语言中的一个很重要的部分。在任何程序中都离不开信息的输入和输出。在面向对象语言中,输入和输出都是通过数据流来实现的。处理数据流的类主要被放在包java.io中。因为前面已经讲过I/O流的基本知识,所以下面只是对之前只是的巩固和补充。 1、数据流的划分 按照处理数据的单位划分,Java定义了两种类型的数据流:字节流和字符流。字节流是用来处理字节的输入和输出的,各种数据都可以用字节来表示,包括数字数据、程序和字节码等。字符流是用来处理字符的输入和输出的,它只处理文本化的数据,任何涉及文本的数据类型都应该使用字符流,包括文本文件、网页以及其他的文本类型。 字节流类InputStream和OutputStream是两个抽象类,InputStream包括了字节输入流的所有方法,OutputStream包括了字符输出流的所有方法。真正用来做数据输入和输出处理的是这两个抽象类的各个具体的子类。这些子类可以针对不同的输入和输出进行处理。下面是输入字节流与输出字节流的表: 流 描 述 FileInputStream 文件字节输入流 ByteArrayInputStream 字节数组输入流 PipedInputStream 管道输入流 BufferedInputStream 缓冲输入流 FilterInputStream 过滤字节输入流 ObjectInputStream 对象输入流 DataInputStream 包含读取Java标准数据类型方法的输入流 流 描 述 FileOutputStream 文件字节输出流 ByteArrayOutputStream 字节数组输出流 PipedOutputStream 管道输出流 BufferedOutputStream 缓冲输出流 FilterOutputStream 过滤字节输出流 ObjectOutputStream 对象输出流 DataOutputStream 包含读取Java标准数据类型方法的输出流 PrintStream 包含print()和println()的输出流 通过这些字节输入流和字节输出流类来创建数据流一遍完成数据的输入和输出。例如将影像、声音等数据写入文件和从文件里读取数据时,就要用到FileInputStream和FileOutputStream类。 字符流类Reader和Writer也是两个抽象类。由于Java采用16位的Unicode字符编码,所以这些抽象类处理的是Unicode的字符流。用来作数据输入和输出处理的是Reader和Writer的子类,这些子类可以针对不同的输入和输出进行处理。输入和输出字符流如下表所示: 输入字符流 流 描 述 FileReader 文件字符输入流 CharArrayReader 从字符数组读取的输入流 StringReader 读取字符串的输入流 PipedReader 管道字符输入流 BufferedReader 缓冲输入流 FilterReader 过滤字符输入流 InputStreamReader 将字节输入流转换为字符输入流 输出字符流 流 描 述 FileWriter 文件字符输出流 CharArrayWriter 从字符数组读取的输出流 StringWriter 读取字符串的输出流 PipedWriter 管道字符输出流 BufferedWriter 缓冲输出流 FilterWriter 过滤字符输出流 OutputStreamWriter 将字节输出流转换为字符输出流 PrintWriter 打印字符输出流 上表中这些字符输入流和字符输出流都是抽象类Reader和Writer的子类,可以通过这些字符输入流和字符输出流来创建数据流以便完成数据的输入和输出。例如将”纯文本”数据写入文件和从文件里读取数据时,就要用到FileReader和FileWriter类。 (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |