第9部分(第3/3 页)
io。*classmyCat{publicvoidmain(Stringargs'')throwsIOException{intb;intcount=0;while((b=System。in。read())!=
…1){count++;System。out。print((char)b);}System。out。println();
//blanklineSystem。err。println(”counted”+count+”totalbytes。”);}}
9。3普通输入输出类
除了基本的键盘输入和屏幕输出外,我们还需要联系文件的输入输出。我们将学习下面几个类:lFileInputStreamlDataInputStreamlFileOutputStreamlDataOutputStream
作为参考,再列出一?copy;特定应用的类:lPipedInputStreamlBufferedInputStreamlPushBackInputStreamlStreamTokenizerlPipedOutputStreamlBufferedOutputStreamlRandomAccessFile
我们不在此讨论这?copy;类,但你可以在JAVA_HOME/src/java/io目录里查看每个类的成员函数定义。
9。4文件
在我们进行文件操作时,需要知道关于文件的信息。File类提?copy;了一?copy;成员函数来操纵文件和获得文件的信息。
9。4。1创建一个新的文件对象
你可用下面三个方法来创建一个新文件对象:FilemyFile;myFile=newFile(”etc/motd”);或myFile=newFile(”/etc”;”motd”);//moreusefulifthedirectoryorfilenamearevariables或FilemyDir=newfile(”/etc”);myFile=newFile(myDir;”motd”);
这三种方法取决于你访问文件的方式。例如,如果你在应用程序里只用一个文件,第一种创建文件的结构是最容易的。但如果你在同一目录里打开数个文件,则第二种或第三种结构更好。
9。4。2文件测试和使用
一但你创建了一个文件对象,你便可以使用以下成员函数来获得文件相关信息:文件名lStringgetName()lStringgetPath()lStringgetAbslutePath()lStringgetParent()lbooleanrenameTo(FilenewName)文件测试lbooleanexists()lbooleancanWrite()lbooleancanRead()lbooleanisFile()lbooleanisDirectory()lbooleanisAbsolute()一般文件信息llonglastModified()llonglength()目录用法lbooleanmkdir()lString''list()
9。4。3文件信息获取例子程序
这里是一个独立的显示文件的基本信息的程序,文件通过命令行参数传输:
importjava。io。*;classfileInfo{FilefileToCheck;publicstaticvoidmain(Stringargs'')throwsIOException{if(args。length》0){for(inti=0;i
end
本章未完,点击下一页继续。