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)