国产最新a级毛片无码专区_综合亚洲欧美日韩久久精品_日本成年片在线观看66_一本到九九av电影_一级毛片免费网站播放_国内精品久久人无码大片_国产人成视频99在线观看_欧美不卡在线一本二本_国产亚洲电影av_可以免费看黄色软件

知ing

Java程序設(shè)計(jì)實(shí)用教程(第三版)

葉核亞 編 / 電子工業(yè)出版社

? ? ? 上傳

查看本書

第9章輸入/輸出流與文件操作

9.1什么是流?流有什么用?面向?qū)ο笳Z言為什么需要流?哪些場(chǎng)合需要流?答:流是指一組有順序、有起點(diǎn)和終點(diǎn)的字節(jié)集合,是對(duì)數(shù)據(jù)傳輸?shù)目偡Q或抽象(也就是數(shù)據(jù)在兩個(gè)對(duì)象之間的傳輸稱為流)。

流的作用就是使數(shù)據(jù)傳輸操作獨(dú)立于相關(guān)設(shè)備。在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,數(shù)據(jù)的傳輸和流動(dòng)具有廣泛性,可以在內(nèi)存與外部設(shè)備之間傳輸,還可以從內(nèi)存到內(nèi)存,甚至可以從一臺(tái)計(jì)算機(jī)通過網(wǎng)絡(luò)流向另一臺(tái)計(jì)算機(jī)等,故面向?qū)ο笳Z言采用流機(jī)制。

在標(biāo)準(zhǔn)輸入/輸出、在文件的讀/寫等操作中都需要流。


9.2Java提供了哪些流類?各種流類之間的關(guān)系是怎樣的?什么場(chǎng)合需要使用什么流類?

答:Java中按照流的方向性,流分為輸入流和輸出流兩大類。按照流中元素的基本類型,流分為字節(jié)流和字符流兩大類。字節(jié)流類按照流的方向分為字節(jié)輸入流類和字節(jié)輸出流類,字符流類方向性分為字符輸入流類和字符輸出流類。以及文件操作類File,隨機(jī)存取文件類RandomAccessFile.

其中InputStream類是所有字節(jié)輸入流的根類,OutputStream類是所有字節(jié)輸出流的根類;Reader類是所有字符輸入流的根類,Writer類是所有字符輸出流的根類。


9.3操作系統(tǒng)中文件和目錄概念是怎么樣的?Java提供了哪些對(duì)文件和目錄操作的類?程序中對(duì)文件和目錄能夠進(jìn)行哪些操作?如何操作?

答:文件是信息的一種組織形式,是存儲(chǔ)在外部存儲(chǔ)介質(zhì)上的具有標(biāo)識(shí)名的一組相關(guān)的信息集合。目錄是文件系統(tǒng)組織和管理文件的基本單位,保存它所管理的每個(gè)文件的基本屬性信息(稱為文件目錄項(xiàng)或文件控制塊)。

Java直接對(duì)文件的順序存取和隨機(jī)存取操作,提供了File類記載文件屬性信息,對(duì)文件讀/寫操作時(shí)以流的形式。RandomAccessFile類以隨機(jī)存取方式進(jìn)行文件讀/寫操作。但在對(duì)文件操作過程中還需要使用文件過濾器接口和文件對(duì)話框類。在操作系統(tǒng)中,目錄也是以文件的形式保存的,稱為目錄文件。故一個(gè)File對(duì)象也可以表示一個(gè)目錄。

可以對(duì)文件進(jìn)行讀、寫、刪除、創(chuàng)建等操作,對(duì)目錄可以讀取、創(chuàng)建、刪除等操作。應(yīng)用程序通過調(diào)用操作系統(tǒng)提供的系統(tǒng)調(diào)用能夠?qū)ξ募澳夸涍M(jìn)行各種操作。

再打開、保存、復(fù)制文件時(shí),需要讀/寫文件中的數(shù)據(jù)內(nèi)容,這些操作由流實(shí)現(xiàn),不同類型的文件需要使用不同的流淚。


9.4流與文件操作有什么關(guān)系?實(shí)際應(yīng)用中將流類與文件操作結(jié)合起來能夠?qū)崿F(xiàn)哪些復(fù)雜問題?如何實(shí)現(xiàn)?

答:對(duì)文件的操作時(shí)通過流這個(gè)工具進(jìn)行的。再打開、保存、復(fù)制文件時(shí),需要讀/寫文件中的數(shù)據(jù)內(nèi)容,這些操作由流實(shí)現(xiàn),不同類型的文件需要使用不同的流淚。


9.5什么是輸入/輸出?什么是標(biāo)準(zhǔn)輸入/輸出?Java怎樣實(shí)現(xiàn)標(biāo)準(zhǔn)輸入/輸出功能?

答:數(shù)據(jù)由外部設(shè)備流向內(nèi)存,這個(gè)過程稱為輸入;數(shù)據(jù)有內(nèi)存流向外部設(shè)備,這個(gè)過程稱為輸出。

在計(jì)算機(jī)系統(tǒng)中,標(biāo)準(zhǔn)輸入是從鍵盤等外部輸入設(shè)備中獲得數(shù)據(jù),標(biāo)準(zhǔn)輸出是向顯示器或打印機(jī)等外部輸出設(shè)備發(fā)送數(shù)據(jù)。

Java在java.lang.System類中聲明了3個(gè)常量in、out和err用于實(shí)現(xiàn)標(biāo)準(zhǔn)輸入/輸出

功能。


9.6除了標(biāo)準(zhǔn)輸入/輸出及文件操作之外,還有那些應(yīng)用中需要使用流?

答:在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,數(shù)據(jù)的傳輸和流動(dòng)具有廣泛性,不僅可以在內(nèi)存與外部設(shè)備之間傳輸,還可以從內(nèi)存流向內(nèi)存,甚至可以從一臺(tái)計(jì)算機(jī)通過網(wǎng)絡(luò)流向另一臺(tái)計(jì)算機(jī),因此各種不同的數(shù)據(jù)源的傳輸都需要采取不同的流機(jī)制來實(shí)現(xiàn)。


9.7在“打開”、“保存”文件對(duì)話框中,設(shè)置“*.txt”等文件過濾器。答:略


9.8RandomAccessFile類和與File類有什么不同,進(jìn)行讀寫操作時(shí)需要使用流嗎?

答:File類保存文件和目錄的各種屬性,在對(duì)文件的操作中,其中讀/寫文件的操作由字節(jié)流或字符流實(shí)現(xiàn),通常是以順序存取方式,如果要對(duì)文件進(jìn)行隨機(jī)存取即對(duì)一個(gè)文件同時(shí)進(jìn)行讀和寫操作時(shí)就是用RandomAccessFile類。它們?cè)谧x寫操作時(shí)都要用到流。


9.9能否將一個(gè)對(duì)象寫入一個(gè)隨機(jī)存取文件?答:不能


9.10Applet應(yīng)用程序能否使用流與文件操作?為什么不能?答:不能。


9.11當(dāng)創(chuàng)建文件流類或File類對(duì)象時(shí),如果文件名為空,會(huì)怎樣?會(huì)拋出異常嗎?

答:NullPointerException


查看更多