[java]IO流

来源:互联网 发布:软件行业信息化建设 编辑:程序博客网 时间:2024/06/04 14:56

IO流---对文件进行读写的操作

    ---输入流

    ---输出流

    ---字节流---以字节为单位进行读写操作

             ---InputStream/OutputStream---构造方法---InputStream()

                ---FileInputStream/FileOutputStream---把一个文件作为字节流进行读写操作(读文本文件最好用字符流)

                   ---构造函数:FileInputStream(File file)/FileInputStream(String name)

                   ---int bytes=in.read(b,0,2056)

                      从in中读字节,放入字节数组b,从第0个位置开始放,最多放2056个,返回的是读到的字节的个数、

                   ---in.available()---返回可以读到的字节的个数

                ---BufferedInputStream/BufferedOutputStream---带有缓冲区的inputStream---增加文件存取的效率

                   ---构造函数:BufferedInputStream(InputStream in)/BufferedInputStream(InputStream in,int size)

                   ---out.flush()--清空缓冲区

                ---PipedInputStream/PipedOutputStram---管道流,管道输入流提供要写入管道输出流的所有数据字节

                   ---构造函数:PipedInputStream()/PipedOutputStream(PipedInputStream in)

                   ---在多线程中使用,主要用来完成线程之间的通信

                ---DataInputStream/DataOutputStream---数据输入、输出流

                   ---构造函数:DataInputStream(InputStream in)

                   ---有时候没有必要存储整个对象信息,只需存储一个对象的成员数据

                                                            out.WriteInt(65)      out.WriteBoolean(true)      out.WriteUTF("中国")

    ---字符流---以字符为单位进行读写操作

             ---java中的字符--一个字符占用两个字节的空间

             ---中文机器中文本文件中的字符---一个字符占用一个字节的空间,一个汉字占用两个字节的空间

             ---Reader/Writer---用于读取字符流的抽象类

                ---InputStreamReader/OutputStreamWriter---字节流通向字符流的桥梁

                   ---构造函数:InputStreamReader(InputStream in)         

                   ---为了达到最高效率,可以考虑在BufferedReader内包装InputStreamReader

                      new BufferedReader(new InputStreamReader(System.in))

                   ---FileReader/FileWriter---用来读取字符文件的便捷类

                      ---构造函数:FileReader(File file)/FileReader(String fileName)

                   ---BufferedReader/BufferedWriter/PrintWriter---缓冲字符输入流---一次可以读一行---高效

                      ---构造函数:BufferedReader(Reader in)/BufferedReader(Reader in,int size)

                                   PrintWriter(File file)/PrintWriter(OutputStream out)

                                   PrintWriter(String fileName)/PrintWriter(Writer out)

原创粉丝点击