标准的IO流

o标准输入流

oPublist static final InputStream in:字节输入流

·使用:

§InputStream is=System.in;

·功能:

§用来读取键盘录入的数据

·OutputStreamWriter字符输出流(转换流)

·Writer in=new OutputStreamWriter(System.out);

·BufferedWriter Bw=newBufferedWriter(in);高效的输出流

o标准输出

oPublist

static final PrintStream out:字节输出流

·使用:

·功能:

§将数据输出到命令行

oInputStreamReader字符输入流(转换流)

o打印流

oPrintStream

oPrintWriter

·可以自动换行println()

·不能输出字节,但是可以输出任意类型的

·通过某些配置,可以实现自动刷新(只有在调用pritln,printf或format才有用)

·也是包装流,不金杯写出功能

·可一把字节输出流转换成字符输出流

注意:只能输出不能输入

o打印流的特有功能

o自动换行

·Println();

o自动刷新

·创建FileWriter对象时启动自动刷新开关

·只有3个方法可以实现自动刷新

§Println,printf,format

·对象操作流:可以用于读写任意类型的对象

oObjectOutputStream

·writeObject

·ObjectoutputStream(OutputStream out)

oObjceInputStream

·readObject

·ObjectInputStream(InputStream in);

Exception in thread "main"

java.io.InvalidClassException

·就是没有实现唯一的ID,当你读取的类和现在的类不一样的时候报错!

·注意:

·使用对像输出流写对象,只能使用对象输入流来读取对象

·只能将支持java.io.Serializable接口的对象写入流中

·Serializable:序列号,是一个标识接口,只起标识作用,没有方法

o当一个类的对象需要IO流进行读写的时候,这个类必须先实现这个接口

·Properties

o添加:setProperty();

·Properties和IO流结合的功能

oVoid list(printWriter

out)

oVoid

load(Reader reader)

oVoid

store(Writer writer,String comments)

·编码表:就是吧计算机底层的二进制数据转换成我们能看到的字符

oASCII

oGB2312

--GBK

oUnicode所有的字符都占2个字节

oUTF-8可变得码表

·ANSI:

o本地编码表gbk

·java中的字符串默认使用的ANSI(gbk)


标准的IO流_第1张图片

你可能感兴趣的:(标准的IO流)