計(jì)算機(jī)二級(jí)Java考點(diǎn)解析:Java輸入輸出操作
系統(tǒng)類(lèi)Java通過(guò)系統(tǒng)類(lèi)達(dá)到訪(fǎng)問(wèn)標(biāo)準(zhǔn)輸入輸出的功能。下面是小編為大家?guī)?lái)的Java輸入輸出操作的知識(shí),歡迎閱讀。
1Java輸入輸出流
所有的程序語(yǔ)言都提?copy;與本機(jī)文件系統(tǒng)交互的方式;Java也不例外。我們將看看Java是怎樣處理標(biāo)準(zhǔn)文件輸入輸出的(包括stdin,stout,stderr)。當(dāng)你在網(wǎng)絡(luò)上開(kāi)發(fā)小程序時(shí),你必須注意直接文件輸入輸出是不安全因素的關(guān)鍵。大多數(shù)用戶(hù)設(shè)置他們的瀏覽器,可讓你自由的訪(fǎng)問(wèn)他們的文件系統(tǒng),但有?copy;不讓你訪(fǎng)問(wèn)。當(dāng)然,如果你開(kāi)發(fā)你內(nèi)部的應(yīng)用程序,你也許需要直接訪(fǎng)問(wèn)文件。標(biāo)準(zhǔn)輸入輸出Unix的用戶(hù),或其他基于命令行系統(tǒng)的用戶(hù)(如DOS),都知道標(biāo)準(zhǔn)輸入輸出的含義。標(biāo)準(zhǔn)輸入文件是鍵盤(pán),標(biāo)準(zhǔn)輸出文件是你的.終端屏幕。標(biāo)準(zhǔn)錯(cuò)誤輸出文件也指向屏幕,如果有必要,它也可以指向另一個(gè)文件以便和正常輸出區(qū)分。
系統(tǒng)類(lèi)Java通過(guò)系統(tǒng)類(lèi)達(dá)到訪(fǎng)問(wèn)標(biāo)準(zhǔn)輸入輸出的功能。上面提到的三個(gè)文件在這個(gè)系統(tǒng)類(lèi)中實(shí)現(xiàn):StdinSystem.in作為InputStream類(lèi)的一個(gè)實(shí)例來(lái)實(shí)現(xiàn)stdin,你可以使用read()和skip(longn)兩個(gè)成員函數(shù)。read()讓你從輸入中讀一個(gè)字節(jié),skip(longn)讓你在輸入中跳過(guò)n個(gè)字節(jié)。
StoutSystem.out作為PrintStream來(lái)實(shí)現(xiàn)stdout,你可以使用print()和println()兩個(gè)成員函數(shù)。這兩個(gè)函數(shù)支持Java的任意基本類(lèi)型作為參數(shù)。
StderrSystem.err同stdout一樣實(shí)現(xiàn)stderr。象System.out一樣,你可以訪(fǎng)問(wèn)PrintStream成員函數(shù)。
2標(biāo)準(zhǔn)輸入輸出例子
這里有一個(gè)例子,功能象Unix里的cat或type:importjava.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.");}}
3普通輸入輸出類(lèi)
除了基本的鍵盤(pán)輸入和屏幕輸出外,我們還需要聯(lián)系文件的輸入輸出。我們將學(xué)習(xí)下面幾個(gè)類(lèi):lFileInputStreamlDataInputStreamlFileOutputStreamlDataOutputStream
作為參考,再列出一?copy;特定應(yīng)用的類(lèi):lPipedInputStreamlBufferedInputStreamlPushBackInputStreamlStreamTokenizerlPipedOutputStreamlBufferedOutputStreamlRandomAccessFile
我們不在此討論這?copy;類(lèi),但你可以在JAVA_HOME/src/java/io目錄里查看每個(gè)類(lèi)的成員函數(shù)定義。
4文件
在我們進(jìn)行文件操作時(shí),需要知道關(guān)于文件的信息。File類(lèi)提?copy;了一?copy;成員函數(shù)來(lái)操縱文件和獲得文件的信息。
4.1創(chuàng)建一個(gè)新的文件對(duì)象
你可用下面三個(gè)方法來(lái)創(chuàng)建一個(gè)新文件對(duì)象:FilemyFile;myFile=newFile("etc/motd");或myFile=newFile("/etc","motd");//moreusefulifthedirectoryorfilenamearevariables或FilemyDir=newfile("/etc");myFile=newFile(myDir,"motd");
這三種方法取決于你訪(fǎng)問(wèn)文件的方式。例如,如果你在應(yīng)用程序里只用一個(gè)文件,第一種創(chuàng)建文件的結(jié)構(gòu)是最容易的。但如果你在同一目錄里打開(kāi)數(shù)個(gè)文件,則第二種或第三種結(jié)構(gòu)更好。
4.2文件測(cè)試和使用
一但你創(chuàng)建了一個(gè)文件對(duì)象,你便可以使用以下成員函數(shù)來(lái)獲得文件相關(guān)信息:文件名lStringgetName()lStringgetPath()lStringgetAbslutePath()lStringgetParent()lbooleanrenameTo(FilenewName)文件測(cè)試lbooleanexists()lbooleancanWrite()lbooleancanRead()lbooleanisFile()lbooleanisDirectory()lbooleanisAbsolute()一般文件信息llonglastModified()llonglength()目錄用法lbooleanmkdir()lString[]list()
4.3文件信息獲取例子程序
這里是一個(gè)獨(dú)立的顯示文件的基本信息的程序,文件通過(guò)命令行參數(shù)傳輸:
importjava.io.*;classfileInfo{FilefileToCheck;publicstaticvoidmain(Stringargs[])throwsIOException{if(args.length>0){for(inti=0;i
【計(jì)算機(jī)二級(jí)Java考點(diǎn)解析:Java輸入輸出操作】相關(guān)文章:
計(jì)算機(jī)二級(jí)考試Java語(yǔ)言程序設(shè)計(jì)考點(diǎn):Java技術(shù)三大特性09-08
計(jì)算機(jī)二級(jí)考試Java入門(mén)教程:Java有什么01-21
計(jì)算機(jī)二級(jí)考試Java入門(mén)教程:Java是什么01-20
計(jì)算機(jī)二級(jí)java精選試題及答案01-23
計(jì)算機(jī)二級(jí)考試Java入門(mén)教程:簡(jiǎn)單的Java程序編寫(xiě)01-24
計(jì)算機(jī)二級(jí)考試Java入門(mén)教程:Java從代碼到運(yùn)行01-23
計(jì)算機(jī)二級(jí)考試Java入門(mén)教程:Java能干什么01-21