赞
踩
匿名用户
1级
2013-07-07 回答
在JAVA中的流按流动方向可以分为输入流及输出流两种,按流的处理位置可分为节点流和包装流。 输入流,输出流是以程序为参考点来说的,所谓的输入流就是程序从中获取数据的流,输出流就是程序要其写数据的流。在输入流的一边是程序,而另一边就是流的数据源。而输出流的一边则目标,一边就是程序。其实流可以想像成是一条长河,在上游有一水库提供水源,河边住着一户人,随时都可以从河边取到水,同时,这户人也可以把一些废水倒进河里,使得废水可以流进大海。这里所提到河就是一个数据的流动通道,而水库就好比是计算机上的一切数据源,包括磁盘文件,内存,IO设备,键盘等等,JAVA提供了非常完善的输入流类来把这些数据源挂接到流上使得程序能从这些输入流中获取所需的数据。河边上的用户就是程序,它能随时随地从流中取得数据,只要有数据源挂接到这个通道上可以。而大海就是程序处理完数据后要流向的目的地,这些目的地包抱磁盘文件,内存,IO设备,显示器等,这些目的地只是相对程序来说的,它们也可能是别的进程的输入流。 如下例子,将数据输出到别的文件,再从文件中读出数据
File f=new File(“1.test”);
Try { FileOutputStream out=new FileOutStream(f);
Byte buf[]=”hello world”.getBytes(); Out.write(buf);
Out.close(); } catch(Exception e) {
System.out.println(e.getMessage());
} try
{ FileInputStream in=new FileInputStream(f);
byte buf[]=new byte[1024]; int len=in.read(buf);
System.out.println(new String(buf,0,len)); }
catch(Exception e) {
System.out.println(e.getMessage()); }
程序用于直接操作目标设备所对应的类叫节点流类,程序也可以通过一个间接流类去调用节点流类,以达到更加灵活方便地读写各种类型的数据,这个间接流类就是包装流类。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。