黑马程序员技术交流社区
标题:
IO流小结
[打印本页]
作者:
gongyanfa123
时间:
2015-7-21 22:40
标题:
IO流小结
一.数据输入输出流:
DataOutputStream:
DateInputStream:
可以输出任何的Java基本数据类型。所以,读取的时候,要按照
写入时的字节数,读取。
二.内存操作流:
ByteArrayOutputStream:
ByteArrayInputStream:
byte[]数组的缓冲区;就是用来缓存byte[]数组
三.打印流:
1.字符流:PrintWriter:
2.字节流:PrintStream:
特点:
1.只有输出流,没有输入流;
2.可以读写任何的数据类型;
3.部分功能带自动刷新,换行;
4.可以操作文件;
3.标准输入输出流:
System.in : BufferedInputStream:
System.out: PrintStream;
四.字节流转换为字符流:(必须掌握)
字节流 --> 转换流 --> 字符流
PrintStream OutputStreamWriter BufferedWriter
PrintStream ps = System.in;
OutputStreamWriter out = new OutputStreamWriter(ps);
BufferedWriter bw = new BufferedWriter(out);
五.随机访问流:
RandomAccessFile:不属于"流"类。它内部封装了InputStream和OutputStream
对文件进行读写操作:
构造方法:
RandomAccessFile(String fileName,String mode):mode:"r"只读;"rw":读写;
成员方法:
writeXxxx();
readXxxxx();
getFilePointer():获取当前文件指针
seek():设置当前文件指针;
六.序列化和反序列化:
序列化:ObjectOutputStream:
注意:1.序列化的类必须实现:Serializable接口(标记接口)
2.添加一个成员变量:serialVersionUID
成员方法:
writeObject(Object obj):
反序列化:
ObjectInputStream:
成员方法:
readObject();
七.Properties类:
1.它就是一个Map集合,继承自:Hashtable;
2.继承的: pub(Object key,Object value) get(Object key) keySet()
特有的: setProperty(String key,String value) getProperty(String key) stringPropertyNames()
3.操作配置文件相关:
load(Reader read):读取配置文件的信息;
store(Writer out,String com):将集合中的数据写入到配置文件;
八.NIO的一个案例:
1.public static long copy(Path source, OutputStream out) :复制文件
2.public static Path write(Path path, Iterable<? extends CharSequence> lines, Charset cs, OpenOption... options):
作者:
最悲歌
时间:
2015-7-21 22:44
马上要学IO流了,收藏着先 ,谢了!!!
作者:
longbao
时间:
2015-7-21 23:27
先收藏,,,
作者:
技术人生
时间:
2015-7-22 20:11
马克一下,非常不错
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2