转自:
Java中OutputStream.flush()具有什么功能呢?
下文讲述java中OutputStream.flush()方法的功能简介说明,如下所示:
OutputStream.flush()方法的功能:
用于清空输出流
如:将所有写入到OutputStream的数据到相应的目标媒介中
如:如果输出流是FileOutputStream,那么写入到其中的数据可能并没有真正写入到磁盘中
即使所有数据都写入到了FileOutputStream,这些数据还是有可能保留在内存的缓冲区中
通过调用flush()方法,可将缓冲区内的数据刷新到磁盘(或网络,以及其他任何形式的目标媒介)中
OutputStream.flush()方法的语法:
public void flush()
参数说明
无任何参数
返回值说明
无任何返回
例
public static void main(String[] args) throws IOException { Socket s = new Socket("127.0.0.1", 80); PrintWriter out = new PrintWriter(s.getOutputStream()); //这里的ture表示流会自动刷新,在后面可以不用使用flush()方法 out.println("GET /myweb/test.jsp HTTP/1.1"); out.println("Accept: */*"); out.println("Accept-Language: zh-CN"); out.println("Accept-Encoding: gzip, deflate"); out.println(); out.flush(); // 清空缓存并输出流 InputStream in = s.getInputStream(); byte b[] = new byte[1024]; int leng = 0; while((leng = in .read(b)) != -1) { String str = new String(b, 0, leng); System.out.println(str); } s.close(); }