欢迎来到天天文库
浏览记录
ID:42409225
大小:591.00 KB
页数:99页
时间:2019-09-14
《Java JDK6学习笔记》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第14章输入/输出输入/输出(Input/Output)泛指对某个设备或环境进行数据的输入或输出。例如对硬盘进行输入/输出、对视频设备进行输入/输出、对网络主机进行输入/输出等,可以想象,因设备或环境的不同,会有各式各样的输入/输出问题与解决方案。输入/输出问题在程序设计中实际上是一个很复杂的问题。对于输入/输出问题,Java将之抽象化为流(Stream)对象来解决。对不同的输入/输出问题,会有相应的流对象提供解决的方案。本章就是要学习Java中各式各样解决输入/输出问题的对象。然而输入/输出问题所涉及的领域相当广,基于学习的角度来看,必须选择一个主题来专门讨论,所以本章主题会围绕在文件输入/
2、输出。有了本章的基础,在了解其他领域的输入/输出问题时就不难入手。14.1 文件在正式了解Java中如何处理文件输入/输出之前,要先了解一下在Java中如何表示一个文件。本小节也将简单地介绍随机文件存取,让您初步了解文件输入/输出时一些必须注意的事项。14.1.1 File类不同的操作系统对于文件系统路径的设置各有差别。例如在Windows中,一个路径的表示法可能是:"C:\Workspace\CH14\"而在Linux下的路径设置可能会像是:"/home/justin/workspace/ch14"Windows的路径指定是使用UNC(UniversalNamingConvention
3、)路径名,以\开始表示硬盘根目录。如果没有以\开始表示相对于当前工作目录的路径,C是可选的硬盘指定,后面跟随着:字符。而UNIX-Like系统没有Windows系统的C、D、E这样的硬盘驱动器概念,UNIX-Like系统的路径指定以/开始表示从根目录开始的绝对路径,不以/开始表示相对于当前工作目录的路径。在程序中设置路径时会有系统相依性的问题,java.io.File类提供一个抽象的、与系统独立的路径表示。给它一个路径字符串,它会将其转换为与系统无关的抽象路径表示,这个路径可以指向一个文件、目录或是URI(UniformResourceIdentifier)。一个File的实例被建立时,它
4、就不能再被改变内容。File实例除了用作一个文件或目录的抽象表示之外,它还提供了不少相关操作方法:可以用它来对文件系统作一些查询与设置的动作。要注意的是,不管是文件还是目录,在Java中都是以File的实例来表示。范例14.1是一个设置与操作File实例的简单示范,可以指定查询某个目录下的所有文件与目录名称。Ü范例14.1 FileDemo.javapackageonlyfun.caterpillar;importjava.io.*;importjava.util.*;publicclassFileDemo{ publicstaticvoidmain(String[]args){
5、 try{ Filefile=newFile(args[0]); if(file.isFile()){//是否为文件 System.out.println(args[0]+"文件"); System.out.print( file.canRead()?"可读":"不可读"); System.out.print( file.canWrite()?"可写":"不可写");
6、 System.out.println( file.length()+"字节"); } else{ //列出所有的文件及目录 File[]files=file.listFiles(); ArrayListfileList= newArrayList(); for(inti=0;i7、+){ //先列出目录 if(files[i].isDirectory()){//是否为目录 //取得路径名 System.out.println("["+ files[i].ge
7、+){ //先列出目录 if(files[i].isDirectory()){//是否为目录 //取得路径名 System.out.println("["+ files[i].ge
此文档下载收益归作者所有