黑马程序员技术交流社区

标题: 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