我曾一度对流的概念管不清楚–什么输入流、输出流、read和write等等。
而现在重新去理解这个概念的时候,香港空间,发现其实并没有我以前想象那么复杂。
流:
程序和外部设备进行数据传输的一个通道。分为输入流和输出流。
输入流(InputStream):
终端设备里的数据传输给程序的通道
输出流(OutStream):
程序的数据传输给终端设备的通道
外部设备:
文件、键盘、鼠标、屏幕、控制台。。。(有些外部设备只能有输入流或者输出流)。
Read:
输入流通过read把外部设备的数据读到程序中
Write:
输出流通过write吧程序中的数据写到外部设备
流程:
外部设备—>>>输入流—>>> 程序 —>>>输出流 —>>>外部设备
举例(java):
场景:通过程序实现文件的复制,服务器空间,网站空间,并在复制的文件中加入一些信息。
程序:
View Code
public class CopyFile {public byte[] getFile(){try {FileInputStream fileInputStream = new FileInputStream(“c:\\file.txt”);byte[] result = new byte[fileInputStream.available()];fileInputStream.read(result);fileInputStream.close();return result;} catch (Exception e) {e.printStackTrace();}return null;}public void copyFile(byte[]result){try {File newFile = new File(“c:\\copyFile.txt”);FileOutputStream fileOutputStream = new FileOutputStream(newFile);fileOutputStream.write(result);fileOutputStream.write(“复制成功了”.getBytes());fileOutputStream.flush();fileOutputStream.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}} main(String[] args) {CopyFile copyFile = new CopyFile();byte[] result = copyFile.getFile();copyFile.copyFile(result);}}而更像是听见了天地间冥冥中的呼唤,