java实验 输入输出流,实验9_java输入输出流

《实验9_java输入输出流》由会员分享,可在线阅读,更多相关《实验9_java输入输出流(11页珍藏版)》请在技术文库上搜索。

1、山西大学计算机与信息技术学 院 实验报 告 姓 名学 号专业班级 计算机科学与技术 课程名称 Java实验 实验日期 2014/5/29 成 绩 指导教师 陈千 批改日期 实验名 称 实验9 Java的输入输出流 实验目的 1. 理解 I/O 流的概念,掌握其分类 2. 掌握文本文件读写、二进制文件读写 实验内容 1. 分别使用 FileWriter 和 BufferedWriter 往文件中写入 1 万个随机数,比较用时的多 少?(用时采用方法 System.currentTimeMillis())求时间差; 使用:FileWriter 程序源代码 import java.io.*; pub。

2、lic class fileWriter public static void main(String args) throws IOException / TODO Auto-generated method stub long time = System.currentTimeMillis();/ 当前时间 FileWriter filewriter = new FileWriter(“text“); int number; for (int i = 0; i = 10000; i+) number = (int) Math.random() * 10000; filewriter.wri。

3、te(number + “ “); filewriter.close(); time = System.currentTimeMillis() - time;/ 时间差 System.out.println(“使用FileWriter用时为: “ + time + “微秒“); 程序运行结果贴图使用:BufferedWriter 程序源代码 import java.io.IOException; public class BufferedWriter public BufferedWriter(String string) / TODO Auto-generated constructor s。

4、tub public static void main(String args) throws IOException / TODO Auto-generated method stub long time = System.currentTimeMillis();/ 当前时间 BufferedWriter bufferedwriter = new BufferedWriter(“bufferedwriter.txt“); int number; for (int i = 0; i = 10000; i+) number = (int) Math.random() * 10000; buffe。

5、redwriter.write(number + “ “); bufferedwriter.close(); time = System.currentTimeMillis() - time;/ 时间差 System.out.println(“使用BufferedWriter用时为: “ + time + “微秒“); private void write(String string) / TODO Auto-generated method stub private void close() / TODO Auto-generated method stub 程序运行结果贴图2.课本 P54。

6、7,19.2 :编写一个文件,如果文件 Exercise 19_2.dat 不存在,就创建一个 名为 Exercise 19_2.txt 的文件。向这个文件追加新数据。使用二进制 I/O 将 100 个随机 生成的整数写入这个文件中。 程序源代码 import java.io.DataOutputStream; import java.io.FileOutputStream; import java.io.IOException; public class Exercise19_2 public static void main(String args) throws IOException 。

7、DataOutputStream output = new DataOutputStream(new FileOutputStream( “Exercise19_2.dat“, true); for (int i = 0; i 100; i+) output.writeInt(int) (Math.random() * 100); output.close(); System.out.println(“Done“); 程序运行结果贴图3.课本 P547 19.3:(对二进制数据文件中的所有数据求和)假设已经使用 DataOutputStream 中的 writeInt(int)创建一个名为 E。

8、xercise 19_3.dat 的二进制数据文 件,文件包含数目不确定的整数,编写一个程序来计算这些整数的总和。 程序源代码 package test_9; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.i。

9、o.OutputStream; public class Exercise19_3 public static void main(String args) throws IOException System.out.println(“准备写入.“); File file = new File(“Exercise19_3.dat“);/ 当前目录下创建一个文 件 OutputStream write = new FileOutputStream(file);/ 开始向新建文 件内写入 DataOutputStream dos = new DataOutputStream(write); / 使。

10、用过滤流将写入单位扩大为对象 int data = 1, 2, 3, 4, 5 ; / 向文件中写五个数据 for (int i = 0; i data.length; i+) dos.writeInt(datai); dos.close(); System.out.println(“写入结束.“); System.out.println(“开始读取.“); InputStream input = new FileInputStream(file);/ 输出流 DataInputStream filter = new DataInputStream(input);/ 过滤流 int resul。

11、t = 0; while (true) try result += filter.readInt(); catch (Exception e) break; System.out.println(“所得的计算结果为: “ + result); System.out.println(“读取结束.“); 程序运行结果贴图 4.在文本文件 bigbook.txt 中包含有很长篇幅的英语短文,编写程序要求统计文件的所 有短文中包含英文字母“A”的个数,并显示统计的时间。 程序源代码 import java.io.FileInputStream; import java.io.IOException; 。

12、public class CountA public static void main(String args) throws IOException long time = System.currentTimeMillis(); String filename = “J:bigbook.txt“; FileInputStream f = new FileInputStream(filename); int count = 0; int c; while (c = f.read() != -1) if (c = A) count+; f.close(); System.out.println(。

13、“bigbook.txt中A的个数为:“ + count);time = System.currentTimeMillis() - time; System.out.println(“统计A的时间为: “ + time); 程序运行结果贴图 5.编写一个 Java 应用程序,给当前的类所在的文件 ReadExample.java 添加行号拷贝到 另一个文件 temp.text。需要拷贝的源文件的内容为:程序源代码 import java.io.IOException;public class BufferedWriter public BufferedWriter(String string)。

14、 / TODO Auto-generated constructor stub public static void main(String args) throws IOException / TODO Auto-generated method stub long time = System.currentTimeMillis();/ 当前时间 BufferedWriter bufferedwriter = new BufferedWriter(“bufferedwriter.txt“); int number; for (int i = 0; i = 10000; i+) number 。

15、= (int) Math.random() * 10000; bufferedwriter.write(number + “ “); bufferedwriter.close(); time = System.currentTimeMillis() - time;/ 时间差 System.out.println(“使用BufferedWriter用时为: “ + time + “微秒“); private void write(String string) / TODO Auto-generated method stub private void close() / TODO Auto-ge。

16、nerated method stub 程序运行结果贴图: 可以看到 在当前路径下,生成了一个拷贝文件temp.txt文件内容为: P547 19.5(将对象和数组存储在文件中)编写一个程序,向一个名为 Exercise19_5.dat 的 文件中存储一个含 5 个 int 值 1,2,3,4,5 的数组,存储一个表示当前时间的 Date 对象,存储一个 double 值 5.5 程序源代码 import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ja。

17、va.io.ObjectInputStream; import java.io.ObjectOutputStream; public class Exercise19_5 public static void main(String args) throws IOException, ClassNotFoundException / TODO Auto-generated method stub int number = 1, 2, 3, 4, 5 ; ObjectOutputStream output = new ObjectOutputStream( new FileOutputStrea。

18、m(“Exercise19_5_dat“); output.writeObject(number); output.writeDouble(5.5); output.writeObject(new java.util.Date(); output.close(); ObjectInputStream input = new ObjectInputStream(new FileInputStream( “Exercise19_5_dat“); System.out.println(“存储的数组为: “); int readNumber = (int) (input.readObject(); f。

19、or (int i = 0; i readNumber.length; i+) System.out.print(readNumberi + “ “); double num = input.readDouble(); java.util.Date date = (java.util.Date) (input.readObject(); System.out.println(“ndouble型的数为: “ + num + “n“ + “日期为: “ + date); 程序运行结果贴图P548 19.12(组合文件)编写一个工具程序,使它能够用下面的命令,将文件组合在一起构成 一个新文件: ja。

20、va Exercise19_12 SourceFile1SourceFilen TargetFile 这个命令将 SourceFile1,SourceFilen合并为TargetFile。 程序源代码 import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; public class Exercise19_12 public static。

21、 void main(String args) throws Exception / Check usage if (args.length 2) System.out .println(“Usage: java Exercise19_12 SourceFile1 . SoureFilen TargetFile“); System.exit(0); / The last file TargetFile is for output BufferedOutputStream output = new BufferedOutputStream( new FileOutputStream(new File(argsargs.length - 1); for (int i = 0; i args.length - 1; i+) BufferedInputStream input = new BufferedInputStream( new FileInputStream(new File(argsi); int value; while (value = input.read() != -1) output.write(value); input.close(); output.close(); 程序运行结果贴图。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值