能创建BufferedReader对象的Java程序代码是
A、BufferedReader in = new BufferedReader(new Reader("a.dat");
B、BufferedReader in = new BufferedReader(new FileReader("a.dat");
C、BufferedReader in = new BufferedReader(new InputStream ("a.dat");
D、BufferedReader in = new BufferedReader(new FileInputStream ("a.dat");
【正确答案】:B
【名师解析】:正确答案是B。Java中的BufferedReader类是用来提供字符输入流的缓冲功能的。它通常用于提高从字符输入流中读取字符的效率。在创建BufferedReader对象时,需要提供一个字符输入流作为其构造函数的参数。
选项A中,使用了Reader类,但是Reader类没有接收文件名作为参数的构造函数,因此这个选项是错误的。
选项B是正确的,它使用了FileReader类,FileReader是用于读取字符文件的便利类。它从文件中读取字符数据,并提供了一个字符输入流。因此,使用FileReader作为BufferedReader的参数是正确的。
选项C中,使用了InputStream类,但InputStream是用于处理字节输入流的,而不是字符输入流,因此不能与BufferedReader一起使用。
选项D中,使用了FileInputStream类,这是用于读取原始字节数据的类。虽然FileInputStream可以用于创建BufferedReader,但在这个选项中,括号没有闭合,语法错误,因此这个选项也是错误的。
综上所述,正确的选项是B,即使用FileReader作为BufferedReader的参数来创建一个用于读取文本文件的BufferedReader对象。