JAVA練習(xí)題(第9章)_第1頁
JAVA練習(xí)題(第9章)_第2頁
JAVA練習(xí)題(第9章)_第3頁
JAVA練習(xí)題(第9章)_第4頁
JAVA練習(xí)題(第9章)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、JAVA程序設(shè)計練習(xí)題 第9章一、選擇題1.可用于獲得文件或目錄的路徑名的是() A.File B.RandomAccessFile C.FileInputStream D.BufferedReader 2.下面語句的功能是( )。RandomAccessFile raf2 = new RandomAccessFile(1.txt,rw ); A.打開當(dāng)前目錄下的文件1.txt,既可以向文件寫數(shù)據(jù),也可以從文件讀數(shù)據(jù)。 B.打開當(dāng)前目錄下的文件1.txt,但只能向文件寫入數(shù)據(jù),不能從文件讀取數(shù)據(jù)。C.打開當(dāng)前目錄下的文件1.txt,但不能向文件寫入數(shù)據(jù),只能從文件讀取數(shù)據(jù)。D.以上說法都不對。

2、 【答案】:【答案】: A【答案】:【答案】: A3. 關(guān)于BufferedReader類的readLine()方法,以下說法不正確的是()。A.方法readLine()每次讀取一行數(shù)據(jù)。 B.方法readLine()每次讀取一個字節(jié)。C.該方法可能拋出IOException異常,調(diào)用該方法時通常應(yīng)將它放到try塊中,并通過catch塊處理異常。D.如果讀到流的末尾,該方法返回的結(jié)果為null。【答案】:【答案】: .用于關(guān)閉流的方法是()A. read( ) B.flush( ) C. close( ) D.write( ).下列哪一個import命令可以使我們在程序中創(chuàng)建輸入/輸出流對象(

3、)A.import java.sql.*;B.import java.util.*;C.import java.io.*;D.import .*;【答案】:【答案】: 【答案】:【答案】: .字符流與字節(jié)流的區(qū)別在于()A前者帶有緩沖,后者沒有B前者是塊讀寫,后者是字節(jié)讀寫C. 二者沒有區(qū)別,可以互換使用D. 每次讀寫的字節(jié)數(shù)不同.隨機(jī)文件訪問是由()類實(shí)現(xiàn)的。A.File B.BufferedInputStreamC.RandomAccessFile D.FileWriter【答案】:【答案】: 【答案】:【答案】: .下列流中哪個不屬于字節(jié)流()AFileInputStreamBBuffe

4、redInputStreamC. FilterInputStreamD. InputStreamReader.在Java的類庫中,包含實(shí)現(xiàn)輸入/輸出操作的包是( )A.java.utilB.java.ioC.java.appletD.java.awt【答案】:【答案】: 【答案】:【答案】: 10. FilterOutputStream是BufferedOutputStream、DataOutputStream及PrintStream的父類,以下哪個類可能是FilterOutputStream構(gòu)造函數(shù)的參數(shù)類型?A.OutputStream B.FileC.InputStream D.Buff

5、eredOutputStream 11.下列哪一個import命令可以使我們在程序中創(chuàng)建輸入/輸出流對象()A.import java.sql.*;B.import java.util.*;C.import java.io.*;D.import .*;【答案】:【答案】: A【答案】:【答案】: 12.如果需要從文件中讀取數(shù)據(jù),則可以在程序中創(chuàng)建哪一個類的對象()A.FileInputStream B.FileOutputStream C.DataOutputStream D.FileWriter13.下面的程序段創(chuàng)建了BufferedReader類的對象in,以便讀取本機(jī)c盤my文件夾下的文

6、件1.txt。File構(gòu)造函數(shù)中正確的路徑和文件名的表示是( )。File f = new File(填代碼處);file =new FileReader(f);in=new BufferedReader(file);A. ./1.txt B. ./my/1.txt C.c:my1.txt D. c: my1.txt 【答案】:【答案】: A【答案】:【答案】: C14.下面的程序創(chuàng)建了一個文件輸出流對象,用來向文件test.txt中輸出數(shù)據(jù),假設(shè)程序當(dāng)前目錄下不存在文件test.txt,編譯下面的程序Test.java后,將該程序運(yùn)行3次,則文件test.txt 的內(nèi)容是( )。import

7、 java.io.*;public class Test public static void main(String args) try String s=ABCDE;byte b=s.getBytes();FileOutputStream file=new FileOutputStream(test.txt,true);file.write(b); file.close();catch(IOException e) System.out.println(e.toString();A.ABCABC B.ABCDE C.Test D.ABCDE ABCDE ABCDE 【答案】:【答案】: D

8、15.下面的程序段的功能是( )。File file1=new File(d:xxxyyyzzz);file1.mkdirs();A.在當(dāng)前目錄下生成子目錄:xxxyyyzzz B.生成目錄: e:xxxyyyzzzC.在當(dāng)前目錄下生成文件xxx.yyy.zzz D.以上說法都不對 16.流的傳遞方式是() A. 并行的 B. 串行的 C. 并行和串行 D. 以上都不對【答案】:【答案】: D【答案】:【答案】: B17.編譯和運(yùn)行下面的應(yīng)用程序,并在命令行界面輸入12345,則回車后屏幕輸出的結(jié)果是( ).public class A public static void main(Stri

9、ng args) throws IOException BufferedReader buf=new BufferedReader( new InputStreamReader(System.in); String str=buf.readLine(); int x=Integer.parseInt(str); System.out.println(x/100); A. 45 B.5 C.123 D. 12345【答案】:【答案】: C18.下列不是java的輸入輸出流的是() A. 文本流 B. 字節(jié)流 C. 字符流 D. 文件流19凡是從中央處理器流向外部設(shè)備的數(shù)據(jù)流稱為() A. 文件流

10、 B. 字符流 C. 輸入流 D. 輸出流【答案】:【答案】: A【答案】:【答案】: D20.獲取一個不包含路徑的文件名的方法為() A. String getName( ) B. String getPath( ) C. String getAbslutePath( ) D. String getParent( )21下列屬于文件輸入輸出類的是() A. FileInputStream和FileOutputStream B. BufferInputStream和BufferOutputStream C. PipedInputStream和PipedOutputStream D. 以上都是【

11、答案】:【答案】: A【答案】:【答案】: A22.下列不屬于FileInputStream輸入流的read()成員函數(shù)的是() A. int read(); B. int read(byte b); C. int read(byte b,int offset,int len); D. int read(int line);23當(dāng)處理的數(shù)據(jù)量很多,或向文件些很多次小數(shù)據(jù),一般使用()流 A. DataOutput B. FileOutput C. BufferedOutput D.PipedOutput【答案】:【答案】: D【答案】:【答案】: C24.當(dāng)要將一文本文件當(dāng)作一個數(shù)據(jù)庫訪問,讀

12、完一個紀(jì)錄后,跳到另一個紀(jì)錄,它們在文件的不同地方時,一般使用()類訪問。 A. FileOutputStream B. RandomAccessFile C. PipedOutputStream D. BufferedOutputStream25. .在JAVA中,要創(chuàng)建一個新目錄,要使用( )類的實(shí)例。 A.File B.FileOutputStrean C.PrintWriter D.Dir【答案】:【答案】: B【答案】:【答案】: A26.在JAVA中,要判斷D盤下是否存在文件abc.txt,應(yīng)該使用以下( )判斷語句。A. if(new File(“d:abc.txt”) .exi

13、sts() = =1) B.if(File.exists(“d:abc.txt”) = =1) C. if(new File(“d:/abc.txt”) .exists( ) ) D. if(File.exists(“d:/abc.txt) 27.在JAVA中,( ) 類提供定位本地文件系統(tǒng),對文件或目錄及其屬性進(jìn)行基本操作。 A. Filelnputstream B. FileReader C. Filewriter D.File 【答案】:【答案】: C【答案】:【答案】: D28.給定一個java程序的main方法的代碼片段如下:假如d 目錄下不存在abc.txt文件,現(xiàn)運(yùn)行該程序,下面

14、的結(jié)果正確的是( )。try PrintWriter out=new PrintWriter(new FileOutputStream(“d:/abc.txt”) ; String name=”chen”; out.print(name) ; out.close( ) ;catch(Execption e) System.out.println(“文件沒有發(fā)現(xiàn)!“) ;A.將在控制臺上打印:“文件沒有發(fā)現(xiàn)!”B.正常運(yùn)行,但沒有生成文件abc.txtC.運(yùn)行后生成abc.txt ,但該文件中無內(nèi)容D.運(yùn)行后生成abc.txt,該文件內(nèi)容為:chen【答案】:【答案】: D29. 在java中,

15、以下代碼()正確地創(chuàng)建了一個InputStreamReader類型的對象。A.new InputStreamReader(new FileInputStream(1.dat) ;B.new InputStreamReader(new FileReader(1.dat) ;C.new InputStreamReader(new BufferedReader(1.dat) ;D.new InputStreamReader(1.dat) ;30.下列選項(xiàng)中屬于過濾流FilterInputStream的子類的是( )。A.DataInputStreamB.DataOutputStreamC.Print

16、StreamD.BufferedOutputStream【答案】:【答案】: A【答案】:【答案】: A二、填空題1.對象串行化可以很容易地擴(kuò)展成支持Java對象的 持續(xù)存儲持續(xù)存儲或持久存儲或持久存儲 ,它提供了對象從流中重建的補(bǔ)充方式。2.FileInputStream是字節(jié)流;BufferedWriter是字符流;ObjectOutputStream是 對象流對象流 。 3.java的輸入輸出流包括_字節(jié)流字節(jié)流_、字符流、文件流、對象流以及多線程之間通信的管道。4.java中的非字符輸出流都是_ OutputStream _抽象類的子類。5java對I/O訪問還提供了同步處理機(jī)制,保證

17、某時刻只有一個線程訪問一個I/O流,這就是_過濾流_6. java中的字符輸入流都是抽象類中的字符輸入流都是抽象類_ Reader _的子的子類,字符輸出流都是抽象類類,字符輸出流都是抽象類_ Writer _的子類。的子類。7. DataOutputStream數(shù)據(jù)流向文件里寫數(shù)據(jù)的方法為_ write()_.8. RandomAccessFile所實(shí)現(xiàn)的接口是_ DataInput接口_和DataOutput接口.9. 文件類_ File _是java.io中的一個重要的非流類,里面封裝了對文件系統(tǒng)進(jìn)行操作的功能.10. 文件操作中經(jīng)常需要的是隨機(jī)訪問, java中的_ RandomAcc

18、essFile _類提供了隨機(jī)訪問文件的功能.11.數(shù)據(jù)流包括數(shù)據(jù)輸入流(數(shù)據(jù)流包括數(shù)據(jù)輸入流(DataInputStream)類)類和數(shù)據(jù)輸出流(和數(shù)據(jù)輸出流(DataOutputStream)類)類12.判斷判斷File對象所表示的文件是否可寫的方法是對象所表示的文件是否可寫的方法是(canWrite( )),判斷),判斷File對象所表示的文件是對象所表示的文件是否可讀的方法是(否可讀的方法是(canRead( ))三、讀程序?qū)懡Y(jié)果 . import java.io.*;public class DataStreamTestpublic static void main(String a

19、rgs)FileInputStream fis;FileOutputStream fos;DataInputStream dis;DataOutputStream dos;try fos=new FileOutputStream(write.dat);dos=new DataOutputStream(fos);dos.writeUTF(Java程序設(shè)計);dos.writeDouble(30.6);dos.writeInt(337);dos.writeBoolean(true);dos.close();fis=new FileInputStream(write.dat);dis=new Dat

20、aInputStream(fis);System.out.println(書名:+dis.readUTF();System.out.println(單價:+dis.readDouble();System.out.println(頁數(shù):+dis.readInt();System.out.println(“是否適合初學(xué)者:+dis.readBoolean( );dis.close();catch(IOException e)e.printStackTrace();書名:書名:Java程序設(shè)計程序設(shè)計單價:單價:30.6頁數(shù):頁數(shù):337是否適合初學(xué)者:是否適合初學(xué)者:true2. import j

21、ava.io.*;public class FileReaderWriterTestpublic static void main(String args) FileReader fr=null; FileWriter fs=null; FileWriter fd=null; FileReader ft=null;try fs=new FileWriter(source.txt); fs.write(很高興學(xué)習(xí)java!); fs.close(); fr=new FileReader(source.txt); fd=new FileWriter(dest.txt); int c; System

22、.out.print(源文件內(nèi)容:); while(c=fr.read()!=-1) System.out.print(char)c); fd.write(c);fd.close(); fr.close(); System.out.print(n目標(biāo)文件內(nèi)容:); ft=new FileReader(dest.txt); char ch=new char100; int count; while(count=ft.read(ch)!=-1) System.out.print(new String(ch,0,count); ft.close(); catch(IOException e) e.p

23、rintStackTrace(); 源文件內(nèi)容:很高興學(xué)習(xí)源文件內(nèi)容:很高興學(xué)習(xí)java!目標(biāo)文件內(nèi)容:很高興學(xué)習(xí)目標(biāo)文件內(nèi)容:很高興學(xué)習(xí)java!3. import java.io.*;public class Example public static void main(String args) try FileOutputStream fos=new FileOutputStream(xx); for (byte b=10;b= 0; i=i-2)System.out.print(ai+ ); System.out.println();功能:該程序使用字符緩功能:該程序使用字符緩沖輸入

24、流從鍵盤輸入沖輸入流從鍵盤輸入10個個數(shù),然后倒序并間隔打印數(shù),然后倒序并間隔打印出來出來。7. import java.io.*;public class TestRandomAccess public static void main(String args) int data_arr=65,66,56,23,27,1,43,65,4,99; try RandomAccessFile randf=new RandomAccessFile(temp.dat,rw); for (int i=0; i=0; i=i-2) randf.seek(i*4); System.out.print( +r

25、andf.readInt(); randf.seek(40); System.out.println(randf.readUTF(); randf.close(); 99 65 1 23 66 Good morning!catch (IOException e) System.out.println(File access error: +e); 8.閱讀下面的程序,并回答問題。import java.io.*;public class Test public static void main(String args) throws IOException BufferedReader buf

26、=new BufferedReader( new InputStreamReader(System.in); while(true) String str=buf.readLine(); if(str.equals(quit) break; int x=Integer.parseInt(str); System.out.println(x*x); 編譯運(yùn)行上面的程序:從鍵盤輸入5,回車后輸出的結(jié)果如何?從鍵盤輸入quit,回車后程序執(zhí)行情況如何?25 終止應(yīng)用程序的運(yùn)行終止應(yīng)用程序的運(yùn)行9. import java.io.*;public class Test public static vo

27、id main(String args) throws IOException BufferedReader buf=new BufferedReader( new InputStreamReader(System.in); while(true) String str = buf.readLine(); if(str.equals(quit) break; int x=Integer.parseInt(str); System.out.println(x*x); 編譯運(yùn)行上面的程序:從鍵盤輸入10,回車后輸出的結(jié)果如何?從鍵盤輸入exit,回車后程序能正確執(zhí)行嗎?為什么?100 不能;因?yàn)榉?/p>

28、法不能;因?yàn)榉椒↖nteger.parseInt(str)不能將字符不能將字符串串“exit”轉(zhuǎn)化為整數(shù),拋出異常。轉(zhuǎn)化為整數(shù),拋出異常。四、補(bǔ)充代碼,完成程序1. 下列程序的功能是使用BufferedReader讀取文件BufferedReaderWriterTest.java內(nèi)容,添加行號后再使用BufferedWriter寫入到文件dest.java中。1: ; /導(dǎo)入所需數(shù)據(jù)包2: public class BufferedReaderWriterTest 3: public static void main (String args ) 4: try 5:FileReader f =

29、 ; /創(chuàng)建文件輸入字符流f6:BufferedReader br= ; /創(chuàng)建緩存輸入字符流br,并套接輸入流f7:FileWriter fw = ; /創(chuàng)建文件輸出字符流fw import java.io.*new FileReader(“BufferedReaderWriterTest.java”)new BufferedReader(f)new FileWriter(“dest.java”)8:BufferedWriter bw= ; /創(chuàng)建緩存輸出字符流bw,并套接輸入流fw9: String s;10: int i=1;11: while(s=br.readLine()!=null

30、) 12: bw.write(i+:+s);13: bw. newLine();14: 15: bw. flush( );16: br.close( );17: bw.close( );18: 19: catch( IOException e) 20: e.printStackTrace();21: 22: 23: new BufferedWriter(fw)2.按注釋提示完成文件復(fù)制的程序按注釋提示完成文件復(fù)制的程序 import java.io.*; class FileStream public static void main(String args ) try File inFile = new File(file1.txt);/指定源文件 File outFile = new File(file2.txt); /指定目標(biāo)文件 FileInputStream fis = ; FileOutputStream fos = new FileOutputStr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論