zoukankan      html  css  js  c++  java
  • Java IO流

    Reader

    1. 方法列表
    abstract void close​() 关闭流并释放与之相关联的任何系统资源。 
    void mark​(int readAheadLimit) 标记流中的当前位置。 
    boolean markSupported​() 告诉这个流是否支持mark()操作。 
    int read​() 读一个字符 
    int read​(char[] cbuf) 将字符读入数组。 
    abstract int read​(char[] cbuf, int off, int len) 将字符读入数组的一部分。 
    int read​(CharBuffer target) 尝试将字符读入指定的字符缓冲区。 
    boolean ready​() 告诉这个流是否准备好被读取。 
    void reset​() 重置流。 
    long skip​(long n) 跳过字符 
    

    FileReader

    1. 构造方法
    FileReader​(File file) 创建一个新的 FileReader ,给出 File读取。 
    FileReader​(FileDescriptor fd) 创建一个新的 FileReader ,给予 FileDescriptor从中读取。 
    FileReader​(String fileName) 创建一个新的 FileReader ,给定要读取的文件的名称。 
    
    1. 例子
            FileReader fileReader = new FileReader("demo.txt");
    //        fileReader.read();//一次读取一个字符
            int chen = -1;
            while ((chen = fileReader.read()) != -1){
                System.out.print((char)chen);
            }
    
            fileReader.close();
    
            FileReader fileReader = new FileReader("demo.txt");
            int num ;
            char[] chen = new char[1024];
            while ((num = fileReader.read(chen)) != -1){
                //num返回的是读取到的字符数
                System.out.print(new String(chen,0,num));
            }
    
            fileReader.close();
    

    BufferedReader

    1. 构造方法
    BufferedReader​(Reader in) 创建使用默认大小的输入缓冲区的缓冲字符输入流。 
    BufferedReader​(Reader in, int sz) 创建使用指定大小的输入缓冲区的缓冲字符输入流。
    
    1. 方法列表
    void close​() 关闭流并释放与之相关联的任何系统资源。 
    Stream<String> lines​() 返回一个 Stream ,其元素是从这个 BufferedReader读取的行。 
    void mark​(int readAheadLimit) 标记流中的当前位置。 
    boolean markSupported​() 告诉这个流是否支持mark()操作。 
    int read​() 读一个字符 
    int read​(char[] cbuf, int off, int len) 将字符读入数组的一部分。 
    String readLine​() 读一行文字。 
    boolean ready​() 告诉这个流是否准备好被读取。 
    void reset​() 将流重置为最近的标记。 
    long skip​(long n) 跳过字符 
    
    1. 例子
    FileReader fileReader = new FileReader("demo.txt");
    BufferedReader bufferedReader = new BufferedReader(fileReader);
    String line = null;
    while ((line = bufferedReader.readLine()) != null) {
        System.out.println(line);
    }
    
    bufferedReader.close();
    

    CharArrayReader

    InputStreamReader

    Writer

    FileWriter

    节点流丨写入指定文件。
    例1:创建一个文件demo.txt,然后向里面写入字符串abcde

    java
    FileWriter fileWriter = new FileWriter("demo.txt");
    fileWriter.write("晨晨!!!");
    
    while (fileWriter != null){
        String str = sc.nextLine();
        if (str.equals("close")){
            fileWriter.close();
            fileWriter = null;
        }else{
            fileWriter.write(str+"\n");
            fileWriter.flush();
        }
    }
    

    BufferedWriter

    处理流 丨BufferedWriter的作用是为其他字符输出流添加一些缓冲功能

    1. 构造方法
    BufferedWriter​(Writer out) 创建使用默认大小的输出缓冲区的缓冲字符输出流。 
    BufferedWriter​(Writer out, int sz) 创建一个新的缓冲字符输出流,
        使用给定大小的输出缓冲区。
    
    1. 方法列表
    void close​() 关闭流,先刷新。 
    void flush​() 刷新流。 
    void newLine​() 写一行行分隔符。 
    void write​(char[] cbuf, int off, int len) 写入字符数组的一部分。 
    void write​(int c) 写一个字符 
    void write​(String s, int off, int len) 写一个字符串的一部分。 
    
    1. 例子
    FileWriter fileWriter = new FileWriter("demo.txt", true);
    BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
    char[] chars = {'狗','晨','晨','!'};
    bufferedWriter.write(chars,0,3);
    bufferedWriter.newLine();
    bufferedWriter.write("嘿");
    bufferedWriter.flush();
    bufferedWriter.close();
    

    CharArrayWriter

    节点流丨CharArrayReader 用于写入字符,它继承于Writer。

    1. 构造方法
    CharArrayWriter​() 创建一个新的CharArrayWriter。 
    CharArrayWriter​(int initialSize) 用指定的初始大小创建一个新的CharArrayWriter。
    
    1. 方法列表
    CharArrayWriter append​(char c) 将指定的字符附加到此作者。 
    CharArrayWriter append​(CharSequence csq) 将指定的字符序列附加到此作者。 
    CharArrayWriter append​(CharSequence csq, int start, int end) 将指定字符序列的子序列附加到此作者。 
    void close​() 关闭流。 
    void flush​() 冲洗流。 
    void reset​() 重置缓冲区,以便您可以再次使用它,而不会丢弃已经分配的缓冲区。 
    int size​() 返回缓冲区的当前大小。 
    char[] toCharArray​() 返回输入数据的副本。 
    String toString​() 将输入数据转换为字符串。 
    void write​(char[] c, int off, int len) 将字符写入缓冲区。 
    void write​(int c) 将一个字符写入缓冲区。 
    void write​(String str, int off, int len) 将一部分字符串写入缓冲区。 
    void writeTo​(Writer out) 将缓冲区的内容写入另一个字符流。 
    

    FilterWriter

    处理流丨FilterWriter是字符类型的过滤输出流

    1. 构造方法
    protected  FilterWriter​(Writer out) 创建一个新的过滤的作者。 
    
    1. 方法列表
    void close​() 关闭流,先刷新。 
    void flush​() 刷新流。 
    void write​(char[] cbuf, int off, int len) 写入字符数组的一部分。 
    void write​(int c) 写一个字符 
    void write​(String str, int off, int len) 写一个字符串的一部分。
    

    PrintWriter

    1. 构造方法
    PrintWriter​(File file) 使用指定的文件创建一个新的PrintWriter,而不需要自动的线路刷新。 
    PrintWriter​(File file, String csn) 使用指定的文件和字符集创建一个新的PrintWriter,而不需要自动进行线条刷新。 
    PrintWriter​(OutputStream out) 从现有的OutputStream创建一个新的PrintWriter,而不需要自动线路刷新。 
    PrintWriter​(OutputStream out, boolean autoFlush) 从现有的OutputStream创建一个新的PrintWriter。 
    PrintWriter​(Writer out) 创建一个新的PrintWriter,没有自动线冲洗。 
    PrintWriter​(Writer out, boolean autoFlush) 创建一个新的PrintWriter。 
    PrintWriter​(String fileName) 使用指定的文件名创建一个新的PrintWriter,而不需要自动执行行刷新。 
    PrintWriter​(String fileName, String csn) 使用指定的文件名和字符集创建一个新的PrintWriter,而不需要自动线路刷新。 
    
    1. 方法列表
    PrintWriter append​(char c) 将指定的字符附加到此作者。 
    PrintWriter append​(CharSequence csq) 将指定的字符序列附加到此作者。 
    PrintWriter append​(CharSequence csq, int start, int end) 将指定字符序列的子序列附加到此作者。 
    boolean checkError​() 如果流未关闭,请刷新流并检查其错误状态。 
    protected void clearError​() 清除此流的错误状态。 
    void close​() 关闭流并释放与之相关联的任何系统资源。 
    void flush​() 刷新流。 
    PrintWriter format​(String format, Object... args) 使用指定的格式字符串和参数将格式化的字符串写入此写入程序。 
    PrintWriter format​(Locale l, String format, Object... args) 使用指定的格式字符串和参数将格式化的字符串写入此写入程序。 
    void print​(boolean b) 打印布尔值。 
    void print​(char c) 打印一个字符 
    void print​(char[] s) 打印字符数组。 
    void print​(double d) 打印双精度浮点数。 
    void print​(float f) 打印浮点数。 
    void print​(int i) 打印一个整数。 
    void print​(long l) 打印一个长整数。 
    void print​(Object obj) 打印一个对象。 
    void print​(String s) 打印字符串。 
    PrintWriter printf​(String format, Object... args) 使用指定的格式字符串和参数将格式化的字符串写入该writer的方便方法。 
    PrintWriter printf​(Locale l, String format, Object... args) 使用指定的格式字符串和参数将格式化的字符串写入该writer的方便方法。 
    void println​() 通过写入行分隔符字符串来终止当前行。 
    void println​(boolean x) 打印一个布尔值,然后终止该行。 
    void println​(char x) 打印一个字符,然后终止该行。 
    void println​(char[] x) 打印字符数组,然后终止行。 
    void println​(double x) 打印双精度浮点数,然后终止行。 
    void println​(float x) 打印一个浮点数,然后终止该行。 
    void println​(int x) 打印一个整数,然后终止该行。 
    void println​(long x) 打印一个长整型,然后终止行。 
    void println​(Object x) 打印一个对象,然后终止该行。 
    void println​(String x) 打印一个字符串,然后终止行。 
    protected void setError​() 表示发生错误。 
    void write​(char[] buf) 写入一个字符数组。 
    void write​(char[] buf, int off, int len) 写一个字符数组的一部分。 
    void write​(int c) 写一个字符 
    void write​(String s) 写一个字符串 
    void write​(String s, int off, int len) 写一个字符串的一部分。 
    

    InputStream

    OutputStream

  • 相关阅读:
    Paperfolding HDU
    I
    2020年8月11日第一次组队训练
    2018ICPC南京I. Magic Potion
    【贪心】纪念品分组
    【贪心】删数问题
    【排序】排名
    小X与队列
    B.T.B.F.
    2018浙江理工大学迎新赛——决赛
  • 原文地址:https://www.cnblogs.com/charlottepl/p/15642771.html
Copyright © 2011-2022 走看看