java中的输入输出流怎么好理解?请各位大侠说的仔细明白一点。我一直搞不懂原理哦。

如题所述

我用非专业的语言给你解释!
要想让java接收你输入的东西。java必须有能接收你的能力。这个东西就是输入流。就像是小溪一样,水流入到河流中。比如,你输入的字符串,以流的方式流入到java中。这是手动输入字符串。关于文件的输入,同理。java要读取文件,这个文件会以流的方式流入到java中,然后java解析这个输入流。
关于输出流,原理和输入流一样的。java要想把你输入的内容通过一系列的解析输出到屏幕上,也是像小溪一样流入到河流中!文件亦如此。生成文件时,通过一些列的计算,包装,最终将这些东西通过输出流,流到你的电脑硬盘上!
输入输出流最好的例子就是发送文件那原理。我选一个文件发送到服务器,服务器通过打开输入流解析这个文件。然后经过一些列的包装解析,最终通过输出流。,流入到另一台电脑上。然后另一台电脑打开输入流。。。。然后通过输出流,输出到硬盘上!
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-17
字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节, 操作字节和字节数组。所以字符流是由Java虚拟机将字节转化为2个字节的Unicode字符为单位的字符而成的,所以它对多国语言支持性比较好!如果是 音频文件、图片、歌曲,就用字节流好点,如果是关系到中文(文本)的,用字符流好点.
所有文件的储存是都是字节(byte)的储存,在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘。在读取文件(特别是文本文件)时,也是一个字节一个字节地读取以形成字节序列.
字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串; 2. 字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以。本回答被网友采纳
第2个回答  2012-01-18
输入输出是相对的,是对于你内存来说的,把你内存中的数据写入文件叫输出,从文件中读取数据到内存叫输入。各种输入输出流,都是继承于最基本的输入输出流,至于到底使用哪个是要看你操作的是什么东西,你操作文件读取就用文件输入输出流,其他类似。
第3个回答  2012-01-17
就好比读、写文章,读文章就是(input)输入,将文章内容融入你的思想里面(程序里就是把信息读入计算机内存),写文章就是(output)输出,将思想(存在内存的信息)存放到可永久保存的纸张(硬盘)上。程序来源于生活,服务于生活。
相似回答