欢迎来到天天文库
浏览记录
ID:52533786
大小:289.99 KB
页数:33页
时间:2020-03-28
《java中的IO流操作大全.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、java中的IO流操作大全JAVA中的IO流⼀、流的概念流(stream)的概念源于UNIX中管道(pipe)的概念。在UNIX中,管道是⼀条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备、外部文件等。⼀个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。流的方向是重要的,根据流的方向,流可分为两类:输入流和输出流。用户可以从输入流中读取信息,但不能写它。相反,对输出流,只能往输入流写,而不能读它。实际上,流的源端和目的端可简单地看成是字节的生产者和消费者,对输入流,可不必关心它的源端是什么,只要
2、简单地从流中读数据,而对输出流,也可不知道它的目的端,只是简单地往流中写数据。形象的比喻——水流,文件======程序,文件和程序之间连接⼀个管道,水流就在之间形成了,自然也就出现了方向:可以流进,也可以流出.便于理解,这么定义流:流就是⼀个管道里面有流水,这个管道连接了文件和程序。二、流的分类1.java.io包中的类对应两类流,⼀类流直接从指定的位置(如磁盘文件或内存区域)读或写,这类流称为结点流(nodestream),其它的流则称为过滤器(filters)。过滤器输入流往往是以其它输入流作为它的输入源,经过过滤或处理后再以新的输入流的形式提供给用户,过滤器输出流的
3、原理也类似。2.Java的常用输入、输出流java.io包中的stream类根据它们操作对象的类型是字符还是字节可分为两大类:字符流和字节流。Java的字节流InputStream是所有字节输入流的祖先,而OutputStream是所有字节输出流的祖先。Java的字符流Reader是所有读取字符串输入流的祖先,而writer是所有输出字符串的祖先。结合开始所说的输入/输出流,出现了个⼀小框架。字节流字符流输入流InputStreamReader输出流OutputStreamWriter【案例1】创建⼀个新文件importjava.io.*;classhello{publi
4、cstaticvoidmain(String[]args){Filef=newFile("D:\hello.txt");try{f.createNewFile();}catch(Exceptione){e.printStackTrace();}}}【运行结果】:程序运行之后,在d盘下会有⼀个名字为hello.txt的文件。【案例2】File类的两个常量importjava.io.*;classhello{publicstaticvoidmain(String[]args){System.out.println(File.separator);System.out.pri
5、ntln(File.pathSeparator);}}【运行结果】:;此处多说几句:有些同学可能认为,我直接在windows下使用进行分割不行吗?当然是可以的。但是在linux下就不是了。所以,要想使得我们的代码跨平台,更加健壮,所以,大家都采用这两个常量吧,其实也多写不了几行。呵呵、现在我们使用File类中的常量改写上面的代码:importjava.io.*;classhello{publicstaticvoidmain(String[]args){StringfileName="D:"+File.separator+"hello.txt";Filef=newFi
6、le(fileName);try{f.createNewFile();}catch(Exceptione){e.printStackTrace();}}}你看,没有多写多少吧,呵呵。所以建议使用File类中的常量。删除⼀个文件/***删除⼀个文件**/importjava.io.*;classhello{publicstaticvoidmain(String[]args){StringfileName="D:"+File.separator+"hello.txt";Filef=newFile(fileName);if(f.exists()){f.delete();}els
7、e{System.out.println("文件不存在");}}}创建⼀个文件夹/***创建⼀个文件夹**/importjava.io.*;classhello{publicstaticvoidmain(String[]args){StringfileName="D:"+File.separator+"hello";Filef=newFile(fileName);f.mkdir();}}【运行结果】:D盘下多了⼀个hello文件夹列出指定目录的全部文件(包括隐藏文件):/***使用list列出指定目录的全部文件**/impor
此文档下载收益归作者所有