java第九章输入输出文件练习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第9章I/O系统
一、选择题
1、下列数据流中,属于输入流的是(b )
A. 从内存流向硬盘的数据流
B. 从键盘流向内存的数据流
C. 从键盘流向显示器的数据流
D. 从网络流向显示器的数据流
2、Java语言中提供输入输出流的包是(d )
A. java.sql
B. java.util
C. java.math
D. java.io
3、下列流中哪一个使用了缓冲区技术?( a )
A. BufferedOutputStream
B. FileInputStream
C. DataOutputStream
D. FileReader
4、下列说法,错误的是( a )
A. FileReader是用文件字节流的读操作
B. PipedInputStream 用于字节流管道流的读操作
C. Java的I/O流包括字符流和字节流
D. DataInputStream被称为数据输入流
5、下列程序建立一个myFile.dat文件,并且允许按照不同的数据类型向里面写入数据,选择正确的一项填入程序的横线处( c )。
Import java.io.*
Public class Test1{
Public static void main(String[] args){
Try{
FileOutputStream fos=new FileOutputStream(“myFile.dat”);
}catch(Exception e){
e.printStackTrace( );
}
}
}
A.OutputStream os=new OutputStream(fos);
B.DataOutputStream dos=new DataOutputStream( );
C.DataOutputStream dos=new DataOutputStream(fos );
D.FileOutputStream fos=new FileOutputStream(fos);
6、下列说法错误的是(b )
A. java的标准输入对象为System.in
B. 打开一个文件时不可能产生IOException
C. 使用File对象乐意判断一个文件是否存在
D. 使用File对象可以判断一个目录是否存在
二、填空题
1、按照流的处理数据的基本单位,I/O流包括输入输入流和输出流。
2、java中,将用于向java程序输入数据的数据源构造成输入流,java通过输出流向目的地输出数据。
3、java中,所有的输入流类都是Inputstream 类或者Reader 类的子类,它们
都继承了read() 方法用于读取数据。所有输出流类都是Outputstream 类或
者writer 类的子类,它们都继承了write() 方法用于写数据。
4、DataoutputStream对象dos的当前位置写入一个保存在变量d中的浮点数的方法是dos.writerDouble 。
三、编程题
1、编写程序,利用FileReader类和FileWriter类,以及缓冲流实现将D盘下的文件in .txt复制到E盘myfile文件夹下。
1.package IOtest;
2.
3.import java.io.FileNotFoundException;
4.import java.io.FileReader;
5.import java.io.FileWriter;
6.import java.io.IOException;
7.
8.public class TxtCopy {
9.
10. /**
11. * 将C:\\的myHeart.txt copy 到 D:\\下
12. *
13. * 首先创建Reader读取数据数据的读取流对象。
14. *
15. * @throws FileNotFoundException
16. */
17. public static void main(String[] args) {
18. FileReader fr = null;
19. FileWriter fw = null;
20. try {
21. fr = new FileReader("C:\\my.txt");
22. fw = new FileWriter("D:\\you.txt");
23. //读一个字符,写一个字符方法
24.// int ch = 0;
25.//
26.// while ((ch = fr.read()) != -1) {
27.// fw.write(ch);
28.// }
29. char []buf = new char[1024];
30. int len = 0;
31. //读一个数组大小,写一个数组大小方法。
32. while((len = fr.read(buf)) != -1){
33. fw.write(buf, 0, len);
34. }
35.
36. } catch (Exception e) {
37. System.out.println(e.toString());
38. } finally {
39. if (fr != null)
40. try {
41. fr.close();
42. } catch (Exception e2) {
43. throw new RuntimeException("关闭失败!");
44. }
45. if (fw != null)
46. try {
47. fw.close();
48. } catch (IOException e) {
49. throw new RuntimeException("关闭失败!");
50. }
51. }
52. }
53.}