JAVA实验9
山西大学计算机与信息技术学院
实验报告
姓 名学 号专业班级课程名称实验日期成 绩指导教师批改日期实验名称
2. 掌握文本文件读写、二进制文件读写
实验环境
JDK1.4以上版本, Eclipse集成开发环境
实验内容
1. 分别使用FileWriter 和 BufferedWriter 往文件中写入10万个随机数,比较用时的多少?(用时采用方法System.currentTimeMillis())求时间差;
使用:FileWriter
import java.io.*;
import java.util.*;
public class gao
{
public static void main(String[]args)throws IOException
{
FileWriter output=new FileWriter("temp.txt");
Random a = new Random();
System.out.println("输入10万个随机数:");
System.out.println("开始执行前时间:");
System.out.print(System.currentTimeMillis());
for(int i=0;i<100000;i++)
{output.write(a.nextInt(100)+" " );
}
System.out.println("执行完后时间为:");
System.out.println(System.currentTimeMillis());}
}
使用:BufferedWriter
import java.io.*;
import java.util.*;
public class hua2
{
public static void main(String[]args)throws IOException
{
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("temp.txt")));
Random a = new Random();
System.out.println("输入10万个随机数:");
System.out.print(System.currentTimeMillis()+" ");
for(int i=0;i<100000;i++)
{
out.write(a.nextInt(100));
}
System.out.println(System.currentTimeMillis());
}
}
import java.io.*;
import java.util.*;
public class Exercise19_2 {
public static void main (String[]args) throws IOException{
File a=new File("d:\\Exercise19_2.dat");
Random b=new Random();
if(!a.exists()){
DataOutputStream out=new DataOutputStream(new FileOutputStream("d:\\Exercise19_2.txt",true));
for(int i=0;i<100;i++){
out.write(b.nextInt(101));
}
}
}
}
19.3(对二进制数据文件中所有整数求和)假设已经使用DataOutputStream中的writeInt(int)方法创建一个名为Exercise19_3.dat的二进制数据文件,文件包含数目不确定的整数,编写一个程序来计算这些整数的总和。
import java.io.*;
import java.util.*;
public class gao1
{
public static void main(String[]args) throws IOException{
DataOutputStream out=new DataOutputStream(new FileOutputStream("d:\\Exercise19_3.dat"));
Random a = new Random();
Scanner input=new Scanner(System.in);
System.out.println("请输入整数n:");
int n =input.nextInt();
int sum=0;
for(int i=0;i