java.io包

xiaoxiao2021-03-01  24

java.io包难吗?2008-04-03 16:58java的io包很难吗?有人会说很难,一个拥有六七十个类的包,每个类里面又有大量的方法,确实是一个复杂的包,但是结构还算是非常清晰的,我们先 看看以下几个类,并把主要作用说一下: 1 OutputStream 2 InputStream 3 Reader 4 Writer 5 File 这几个类我们不看API都应该知道是什么意思,哪怕你没有过四级。File,当然是关于文件的类,文件的地址,文件的名称,文件的父目录,文件的子目录 ……自己到api里面看看吧,反正一般的文件属性File类都提供的查看和操作的方法。 OutputStream,InputStream:输入输出流,很多人都讨厌java的io包绝大多数是因为这两个东西,开始我也挺讨厌的,输入输出经常搞混。特别是原来从 c学起的人更是搞不清,我开始认为输出吗,当然就是文件输出了,也就是读文件;输入就是向文件中输入,也就是写文件!大错特错,恰恰相反,正确的 是输入代表读文件,输出代表写文件。看样子java的前辈们都是逆向思维!不是的,这里是我们没有理解流的概念,流,像水流,我们的程序像一个水站 ,没水了抽点水,有水了放点水,而文件就是长江黄河。我们从长江中抽了水(输入流),把水中加点盐搁点酒(操作),然后再把水(输出流)放到黄 河中去。好了,没明白的现在应该明白了,java所谓的流是相对于水站(程序),进水站(程序)的流叫做输入流,出水站(程序)的流叫做输出流,明 明白白,非常清晰吧!大家可能会问那么长江和黄河是什么,长江和黄河当然是有水或可以存水还或者创造水的地方:键盘,文件,网络端口,显示屏… …至于那些可以做为输入流的始点还是输出流的终点(当然输入流的终点和输出流的始点都是水站)就看大家自己来判断,如果什么时候输出流的终点是 键盘的话要告诉我哦!! Writer,Reader:写者和读者,有了流的概念,这两个家伙我们就比较好处理了,他们是一个养鱼的,一个抓鱼的 ,不过他们的本领要大一些,养鱼抓鱼 都得要水啊!鱼在水里,所以他们首先的任务是找到水 。他们可以从其他地方搞到水后来水站,Reader的儿子InputStreamReader可以从长江中(输入流 )中搞到水来,当然可以了!站在水站中不用动,长江水就来了。Reader的孙子FileReader更牛一些。它可以从淮河里搞到水,甚至你给他一个淮河的地 址,他就屁癫屁癫的就跑去了搞水了:FileReader fr=new FileReader("E://text.txt")搞到水后他们就开始放鱼的放鱼,抓鱼的抓鱼,但是他们的子 孙却各有神通,抓鱼的大小,方式各不相同。 例子: A FileReader reader = new FileReader("e://text.txt"); BufferedReader br = new BufferedReader(reader); String s1 =new String(); while((s1 = br.readLine()) != null){ list.add(s1); } br.close(); reader.close(); return doList(list); }catch(Exception e){ e.printStackTrace(); return null; } } reader 找来了水,让 br抓, br可以一行一行的抓鱼,比FileReader快的多 B FileWriter fw=new FileWriter("E://text.txt") fw.writer("hello world!") fw 找到了养鱼的水潭,然后放了一条“hello world”的鱼 C System.out.println("helloworld!") 一个“helloworld”的输出水流流到了显示器上 D System.in.read(byte[]) 一个键盘的输入流流到了程序中的byte[]中了 其他的一大堆类就是这五个类的子子孙孙,都有老祖宗的血脉,又有自己的绝活!!! 相关资源:带音效新年烟花动画特效-HTML-代码
转载请注明原文地址: https://www.6miu.com/read-4050294.html

最新回复(0)