1.BufferedOutputStream 字节缓冲输出流
构造方法:(1)BufferedOutputStream(OutputStream out);
(2)BufferedOutputStream(OutputStream out, int size);指定缓冲流内部缓冲区的大小
public static void main(String[] args) throws IOException {
FileOutputStream fos = new FileOutputStream("dos.dat");
BufferedOutputStream bos = new BufferedOutputStream(fos);
bos.write("我爸数据写到内部缓冲区中".getBytes());
bos.flush();
bos.close();
}
2.BufferedInputStream 字节缓冲输入流
构造方法:(1)BufferedInputStream(InputStream in);
(2)BufferedInputStream(InputStream in, int size);指定缓冲流内部缓冲区的大小
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("dos.dat");
BufferedInputStream bis = new BufferedInputStream(fis);
/*int len = 0;
while((len = bis.read()) !=-1) {
System.out.println(len);
}*/
byte[] bytes = new byte[1024];
int len = 0;
while((len = bis.read()) != -1) {
System.out.println(new String(bytes, 0, len));
}
bis.close();
}
3.BufferedWriter 字符串缓冲输出流
构造方法:(1)BufferedWriter(Writer out);
(2)BufferedWriter(Writer out , int size);
特有的成员方法:void newLine(); 写入一个行分隔符。会根据不同的操作系统,获取不同的行分隔符。
public static void main(String[] args) throws IOException {
BufferedWriter bw = new BufferedWriter(new FileWriter("dos.dat"));
for(int i = 0; i < 10; i++) {
bw.write("我爱你");
//bw.write("\r\n");
bw.newLine();
}
bw.flush();
bw.close();
}
4.BufferedReader字符缓冲输入流
构造方法:(1)BufferedReader(Reader in);
(2)BufferedReader(Reader in , int size);
特有的成员方法:String readLine(); 读取一个文本行,读取一行数据。
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new FileReader("dos.dat"));
/*String line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);
line = br.readLine();
System.out.println(line);*/
String line;
while((line = br.readLine()) != null) {
System.out.println(line);
}
}