Java——IO类,字符缓冲区

字符缓冲流

将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入
BufferedWriter(Writer out) ;
          创建一个使用默认大小输出缓冲区的缓冲字符输出流。
BufferedWriter(Writer out, int sz);
          创建一个使用给定大小输出缓冲区的新缓冲字符输出流。

//父类Writer中的方法
void write(char[] cbuf) ;
          写入字符数组。
abstract void write(char[] cbuf, int off, int len) ;
          写入字符数组的某一部分。   //这个方法子类实现了
 void write(int c) ;
          写入单个字符。
 void write(String str) ;
          写入字符串。
 void write(String str, int off, int len) ;
          写入字符串的某一部分。
void newLine()
          写入一个行分隔符。

int read()
          读取单个字符。
 int read(char[] cbuf)
          将字符读入数组。
abstract int read(char[] cbuf, int off, int len)
          将字符读入数组的某一部分。 //子类BufferedReader实现
 String readLine()
          读取一个文本行。如果已到达流末尾,则返回 null


public static void main(String[] args) throws IOException {
/*             BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("4.txt"));
                String str = "你好,昆明";
                bufferedWriter.write(str);
                bufferedWriter.newLine();   //直接写入一个换行,不用考虑系统平台
                bufferedWriter.write(str);
                bufferedWriter.close();    */

                BufferedReader bReader = new BufferedReader(new FileReader("4.txt"));
/*             char[] cbuf = new char[4];
                bReader.read(cbuf);
               System.out.println(new String(cbuf));  */      //你好,昆

/*             String readLine;
                while( ( readLine = bReader.readLine() ) != null){
                        System.out.println(readLine);
                }
                bReader.close();*/
//使用 BufferedReader BufferedWriter 复制
              BufferedReader bufferedReader = new BufferedReader(new FileReader("11.java"));
              BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("copy.java"));
                //逐行复制
                String string = null;

                while( (string = bufferedReader.readLine()) != null ){

                        bufferedWriter.write(string);
                        bufferedWriter.newLine();    
//读完一行写一行不会把回车换行写进去,所有要自己写换行
                }

                bufferedReader.close();
                bufferedWriter.close();
        }
}






猜你喜欢

转载自www.cnblogs.com/meihao1203/p/9182008.html