当前位置:文档之家› 5Java第五单元练习题-输入流与输出流

5Java第五单元练习题-输入流与输出流

5Java输入流与输出流5.1单项选择题1.实现字符流的写操作类是()。

A.FileReader B.Writer C.FileInputStream D.FileOutputStream2. 实现字符流的读操作类是()。

A.FileReader B.Writer C.FileInputStream D.FileOutputStream3.凡是从中央处理器流向外部设备的数据流称为()A. 文件流B. 字符流C. 输入流D. 输出流4.构造BufferedInputStream的合适参数是哪一个?()A.FileInputStream B.BufferedOutputStreamC.File D.FileOuterStream5.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上()语句。

A.import java.awt.* ; B.import java.applet.Applet ;C.import java.io.* ; D.import java.awt.Graphics ;6.下列流中哪个不属于字符流?()A.InputStreamReader B.BufferedReaderC.FilterReader D.FileInputStream7.流的传递方式是()A. 并行的B. 串行的C. 并行和串行D. 以上都不对8.字符流与字节流的区别在于()A.前者带有缓冲,后者没有B.前者是块读写,后者是字节读写C. 二者没有区别,可以互换使用D. 每次读写的字节数不同9.下列流中哪个不属于字节流()A.FileInputStreamB.BufferedInputStreamC. FilterInputStreamD. InputStreamReader10.如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象()A.FileInputStream B.FileOutputStreamC.DataOutputStream D.FileWriter11. 下列哪一个import命令可以使我们在程序中创建输入/输出流对象()A.import java.sql.*; B.import java.util.*;C.import java.io.*; D.import .*;12.下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文件夹下的文件1.txt。

File构造函数中正确的路径和文件名的表示是( )。

File f = new File(填代码处);file =new FileReader(f);in=new BufferedReader(file);A."./1.txt" B."../my/1.txt" C."c:\\my\\1.txt" D."c:\ my\1.txt" 13.下面语句的功能是( )。

RandomAccessFile raf2 = new RandomAccessFile("1.txt","rw" );A.打开当前目录下的文件1.txt,既可以向文件写数据,也可以从文件读数据。

B.打开当前目录下的文件1.txt,但只能向文件写入数据,不能从文件读取数据。

C.打开当前目录下的文件1.txt,但不能向文件写入数据,只能从文件读取数据。

D.以上说法都不对。

14.下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt 的内容是( )。

import 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.ABCABCB. ABCDEC. TestD. ABCDE ABCDE ABCDE15. 下面关于java中输入/输出流的说法错误的是( )。

A) FileInputStream与FileOutputStream类用读、写字节流。

B) Reader与Writer类用来读、写字符流。

C) RandomAccessFile只可以用来读文件。

D) File类用来处理与文件相关的操作。

16.关于BufferedReader类的readLine()方法,以下说法不正确的是()。

A.方法readLine()每次读取一行数据。

B.方法readLine()每次读取一个字节。

C.该方法可能抛出IOException异常,调用该方法时通常应将它放到try块中,并通过catch 块处理异常。

D.如果读到流的末尾,该方法返回的结果为null。

5.2填空题1.java的输入输出流包括_______、字符流、文件流、对象流以及多线程之间通信的管道。

2.java中的非字符输出流都是________抽象类的子类。

3.java对I/O访问还提供了同步处理机制,保证某时刻只有一个线程访问一个I/O流,这就是_______4.java中的字符输出流都是抽象类________的子类。

5.DataOutputStream数据流向文件里写数据的方法为__________.6.RandomAccessFile所实现的接口是_________和DataOutput接口.7.文件类_______是java.io中的一个重要的非流类,里面封装了对文件系统进行操作的功能.8.文件操作中经常需要的是随机访问, java中的_______类提供了随机访问文件的功能.9.所有的字节输入流都从类继承,所有的字节输出流都从OutputSteam类继承。

10.与用于读写字节流的InputStream类和OutputStream类相对应,Java还提供了用于读写Unicode字符的字符流Reader类和类。

5.3判断题1.文件缓冲流的作用是提高文件的读/写效率。

(√)2.通过File类可对文件属性进行修改。

(√)3.IOException必须被捕获或抛出。

(√)4.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out和标准错误输出System.err。

(√)5.对象串行化机制是指将程序中对象的状态转化为一个字符流,存储在文件中。

(×)6.Serializable接口是个空接口,它只是一个表示对象可以串行化的特殊标记。

(√)5.4程序阅读题1.阅读下面的程序,并回答问题。

import java.io.*;public class Test {public static void 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);}}}编译运行上面的程序:1)从键盘输入5,回车后输出的结果如何?2)从键盘输入quit,回车后程序执行情况如何?2.按注释提示完成文件复制的程序,写出(1)和(2)处的代码。

//FileStream源代码如下:import java.io.*;class FileStream {public static void main(String args []) {try {File inFile = new File("file1.txt"); //指定源文件File outFile = new File("file2.txt"); //指定目标文件FileInputStream fis =(1);FileOutputStream fos = new FileOutputStream(outFile);int c;//逐字节从源文件中输入,再输出到fos流while ((c = fis.read ())!=-1)(2);fis.close();fos.close();}catch (Exception e) {System.out.println("FileStreamsTest: "+e);}}}5.5参考答案5.5.1单项选择题:1.A2.B3.D4.A5.C6.D7.B8.D9.D 10. A 11.C 12.C 13.A 14.D 15.C 16.B5.5.2填空题1. 字节流2. OutputStream3. 过滤流4. Writer5. write()6. DataInput接口7. File8. RandomAccessFile9. InputStream10. Writer5.5.3判断题1. √2. √3.√4.√5. ×6. √5.5.4程序阅读题1. 答案:1)252)终止应用程序的运行。

2.答案:(1)new FileInputStream(inFile); (2)fos.write(c);。

相关主题