当前位置:文档之家› JAVA输入输出流

JAVA输入输出流

三个基本的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()
9.4常用输入输出流类(2)
FileReader-文件字符输入流
构造方法: public FileReader(String name) throws FileNotFoundException public FileReader(File file) throws FileNotFoundException
方法:参见InputStream FileOutputStream-文件字节输出流
构造方法: public FileOutputStream(String name) throws FileNotFoundException public FileOutputStream(File file) throws FileNotFoundException 方法:参见OutputStream
//标准输出流System.out是字节输出流
//把标准输出流转化成缓冲字节输出流 /用BufferedOutputStream中函数Write输出 //数据从缓冲区中全部输出
import java.io.*; public class Test3 { public static void main(String[] args) throws IOException{ String s = "Hello"; OutputStreamWriter o = new OutputStreamWriter(System.out); o.write(s); 把标准字节输出流转化 成字符输出流 o.flush(); } }

9.3 Writer类提供的方法

三个基本的write方法: – void write(int c) – void write(char[] cbuf) – void write(char[] cbuf, int offset, int length) – void write(String string) – void write(String string, int offset, int length) 其它方法 – void close() – void flush()
OutputStream 字节输出流
FilterOutputStream 过滤器输出流
BufferedOutputStream 缓冲输出流
ObjectOutputStream 对象输出流
DataOutputStream 数据输出流
ByteArrayOutputStream 字节数组输出流
9.2 InputStream类提供的方法
Reader
9.3 字符流(2)
字符输出流Writer类为所有面向字符的输出流的超类。
BufferedWriter CharArrayWriter StringWriter Writer OutputStreamWriter PrintWriter PipedWriter FilterWriter FileWriter
9.1 数据流基本概念(4)
java.io包中的数据流及文件类 包中的数据流及文件类 数据流类
InputStream OuputStream Reader Writer
说明
字节输入流的超类 字节输出流的超类 字符输入流的超类 字符输出流的超类
补充说明
它是抽象类,子类才能实例化 它是抽象类,子类才能实例化 它是抽象类,子类才能实例化 它是抽象类,子类才能实例化
方法:见InputStream BufferedOutputStream-缓冲输出字节流 构造方法:
BufferedOutputStream(OutputStream out):同样是为了提高效率. 方法:见OutputStream.
9.4常用输入\输出流类(4)
BufferedReader-字符缓冲输入流 构造方法: BufferedReader(Reader in):把一个普通的字符流转化成缓冲流,同样 可以提高输入效率. 方法:除了Reader中函数外,主要有: public String readLine(); //读一行文本 BufferedWriter-字符缓冲输出流 构造方法: BufferedWriter(Writer out) 方法:除了Writer中函数外,主要有: public void newLine(); //回车换行

9.4常用输入\输出流类
FileInputSream-文件字节输入流
构造方法: public FileInputStream(String name) throws FileNotFoundException public FileInputStream(File file) throws FileNotFoundException
第9讲 输入/输出流
9.1 数据流基本概念(1)
数据流(stream)是指一组有顺序的、有起点和终点的字 数据流 节集合,是对输入输出的总称(或抽象)。数据流完成 从键盘接收数据、读写文件以及打印等数据传输操作。
程序 键盘 显示器 输入流
打印机 输出流 文件 文件
图9.1 输入流与输出流
9.1 数据流基本概念(2)
9.3 Reader类提供的方法

三个基本的read方法: – int read() – int read(char[] cbuf) – int read(char[] cbuf, int offset, int length) 其它方法 – void close() – boolean ready() – skip(long n) – boolean markSupported() – void mark(int readAheadLimit) – void reset()
9.5示例1
以下四段代码均在屏幕上输出”Hello”
public class Test1 { public static void main(String []args) { System.out.println(“Hello”); import java.io.*; public class Test2 { public static void main(String []args) throws IOException { String s = "Hello"; BufferedOutputStream b = new BufferedOutputStream(System.out); b.write(s.getBytes()); b.flush(); } }
9.2 OutputStream类提供的方法
三个基本的write方法:
void write(int c) void write(byte[] buffer) void write(byte[] buffer, int offset, int length)
其它方法
void close() void flush()
import java.io.*; public class Test3 { public static void main(String[] args) throws IOException{ String s = "Hello"; OutputStreamWriter o = new OutputStreamWriter(System.out); BufferedWriter b = new BufferedWriter(o); b.write(s); b.flush(); } }
PushbackInputStream 回压输入流
InputStream 字节输入流
FilterInputStream 过滤器输入流
BufferedInputStream 缓冲输入流
ObjectInputStream 对象输入流
DataInputStream 数据输入流
SequenceInputStream 顺序输入流
方法:参见Reader FileWriter-文件字符输出流
构造方法: public FileWriter(String name) throws FileNotFoundException public FileWriter(File file) throws FileNotFoundException 方法:参见Writer
ByteArrayInputStream 字节数组输入流
StringBufferInputStream 缓冲字符串输入流
9.2 字节流(2)
字节输出流OutputStream类为所有面向字节的输出流的超类。
FileOutputStream 文件输出流
PipedOutputStream 管道输出流
PrintStream 格式化输出流
以下两个类是单独与文件相关的类,与上述流类不同 File RandomAccessFile 文件类 随机访问文件类 非抽象类 非抽象类
9.2 字节流
字节输入流InputStream类为所有面向字节的输入流的超类。
FileInputStream 文件输入流
PipedInputStream 管道输入流
9.1 数据流基本概念(3)
import java.io.*; public class Input1 { public static void main(String args[]) throws IOException { System.out.println("Input: "); byte buffer[] = new byte[512]; //输入缓冲区 输入缓冲区 int count = System.in.read(buffer); //读取标准输入流 读取标准输入流 System.out.println("Output: "); for (int i=0;i<count;i++) //输出 输出buffer元素值 输出 元素值 { System.out.print(" "+buffer[i]); } System.out.println(); for (int i=0;i<count;i++) //按字符方式输出 按字符方式输出buffer 按字符方式输出 { System.out.print((char) buffer[i]); } System.out.println("count = "+ count); //buffer实际长度 实际长度 } }
相关主题