zoukankan      html  css  js  c++  java
  • IO流文件读写

              Collection接口
    java.util.Collections类
        工具类,提供大量操纵集合的静态方法
        static void sort(List)
        static void sort(List, Comparator)
     
        static int binarySearch(List, E)
     
        static void reverse(List)
     
        static void shuffle(List)
        static void shuffle(List, Random)   
     
    java.io.File类
        此类实例表示是一个物理文件或目录的抽象形式
     
        boolean exists()
        boolean isFile()
        boolean isDirectory()
        boolean isAbsolute()
        boolean createNewFile()
        boolean mkDir()
        boolean mkDirs()
        boolean delete()
        void     deleteOnExit()
        long     length()
        long    lastModified()
        String  getName()
        String  getPath()
        String    getParent()
        String     getAbsolutePath()
        String[] list()
        String[] list(FilenameFilter)
        File[] listFiles()
        File[] listFiles(FileFilter)
     
     
    如果将数据读入内存,称为输入(Input|Read)
    如果内存写入外部设备(硬盘,终端..),称为输出(Output|Write)
    根据读写时按字节或字符为单位,分为二进制文件,文本文件
     
     
    RandomAccessFile类
        此类的实例支持对随机访问文件的读取和写入。
    构造器
    RandomAccessFile(File file, String mode)
              创建从中读取和向其中写入(可选)的随机访问文件流,该文件由 File 参数指定。
    RandomAccessFile(String name, String mode)
              创建从中读取和向其中写入(可选)的随机访问文件流,该文件具有指定名称。
    ===============================
        mode 参数指定用以打开文件的访问模式。允许的值及其含意为:
        值含意
        "r" 以只读方式打开。调用结果对象的任何 write 方法都将导致抛出 IOException。 
        "rw" 打开以便读取和写入。如果该文件尚不存在,则尝试创建该文件。 
        "rws" 打开以便读取和写入,对于 "rw",还要求对文件的内容或元数据的每个更新都同步写入到底层存储设备。 
        "rwd"   打开以便读取和写入,对于 "rw",还要求对文件内容的每个更新都同步写入到底层存储设备。
    常用方法:
        public long length()
                throws IOException
            返回:按字节测量的此文件的长度。
        int read()
              从此文件中读取一个数据字节。
        int read(byte[] b)
              将最多 b.length 个数据字节从此文件读入 byte 数组。
            返回读入缓冲区的总字节数,如果由于已到达此文件的末尾而不再有数据,则返回 -1。
        int read(byte[] b, int off, int len)
              将最多 len 个数据字节从此文件读入 byte 数组。
        void seek(long pos)
              设置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作。
        void write(byte[] b)
              将 b.length 个字节从指定 byte 数组写入到此文件,并从当前文件指针开始。
        void write(byte[] b, int off, int len)
              将 len 个字节从指定 byte 数组写入到此文件,并从偏移量 off 处开始。
        void write(int b)
              向此文件写入指定的字节。
    ===============================================         
    二进制文件读写
        InputStream:
              close()
              read()
        此抽象类是表示字节输入流的所有类的超类。
            FileInputStream:文件输入流
            ObjectInputStream:对象输入流
            StringBufferInputStream:字符缓冲区输入流
     
        OutputStream:
              close()
              write()
        此抽象类是表示字节输出流的所有类的超类。
            FileOutputStream:文件输出流
            ObjectOutputStream:对象输出流
            StringBufferOutputStream:字符缓冲区输出流
     

     
    Jdk提供的流继承了四大类:InputStream(字节输入流),OutputStream(字节输出流),Reader(字符输入流),Writer(字符输出流)。
     
    IO
    java.io包
    File:表示文件或目录的一个抽象对象
    File f = new File(参数)
    常用方法:
        boolean isFile():判断是否是文件
        boolean exists():判断是否存在
        boolean isDirctory():判断是否是目录
     
        boolean createNewFile():创建新文件
        boolean mkdir():创建目录,如果当前目录指的父路径不存在,抛IOException
        boolean mkdirs():创建目录树
     
        boolean delete():删除
     
        File getAbsoluteFile()
              返回此抽象路径名的绝对路径名形式。
        String getAbsolutePath()
              返回此抽象路径名的绝对路径名字符串。
        File getCanonicalFile()
              返回此抽象路径名的规范形式。
        String getCanonicalPath()
              返回此抽象路径名的规范路径名字符串。
        String getName()
              返回由此抽象路径名表示的文件或目录的名称。
        String getParent()
              返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
        File getParentFile()
              返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。
        String getPath()
              将此抽象路径名转换为一个路径名字符串。
     
        long getFreeSpace()
              返回此抽象路径名指定的分区中未分配的字节数。
     
        String[] list()
              返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
        String[] list(FilenameFilter filter)
              返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。
        File[] listFiles()
              返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
        File[] listFiles(FileFilter filter)
              返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
        File[] listFiles(FilenameFilter filter)
              返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
     
     
    数据方向:
        输入流和输出流
    读写方式:
        二进制数据流,文本数据流
    具体的实现类:
    二进制输入流:
        InputStream:
            close()
            read()及一系列重载的方法
        常见子类:
            FileInputStream:文件输入流
            BufferedInputStream:缓冲区输入流
            ObjectInputStream:反序列化(从文件中还原java对象,对象的类型必须实现Serializable接口)
     
    二进制输出流:
        OutputStream
            close()
            write()及一系列重载的方法
        常见子类:
            FileOutputStream:文件输出流
            BufferedOutputStream:缓冲区输出流
            ObjectOutputStream:序列化(将对象保存到文件,对象的类型必须实现Serializable接口)
     
    文本输入流:
        Reader 
    文本输出流    :
        Writer
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    <转>Java 高并发综合
    <转>Spring 知识点提炼
    qqq
    ttt
    工作中的那些坑(2)——逆波兰表达式
    工作中的那些坑(1)——一次过滤存量数据的优化过程
    Java学习笔记
    《代码大全》笔记(一)
    由Cocos2d-x工程入口窥见代理模式
    makefile
  • 原文地址:https://www.cnblogs.com/zachary7/p/8191605.html
Copyright © 2011-2022 走看看