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();

        }

}
























原文地址:https://www.cnblogs.com/meihao1203/p/9182008.html