java读取txt文件内容并计算CPU耗时---以读完《红楼梦》为例
01. 学习目的
(1)java读取TXT文档内容到字符串数组
(2)计算文档读取过程CPU耗时
02. 实现代码
-
hlm.txt内容:
-
代码
/*
#程序开始,获取系统当前时间
#用文件输入流FileInputStream读取文档内容
#将读入的字节流转化为字符流
#将字符流中的数据存入字符数组
#程序结束,获取系统当前时间,计算读完《红楼梦》耗时。
*/
import java.io.*;//导入io包下的任意类
public class hlm
{
public static void main(String[] args)
{
double begin = System.currentTimeMillis(); // 程序开始时间,调用系统的当前时间,时间单位为毫秒
try
{
FileInputStream fr=new FileInputStream("hlm.txt");//实例化FileInputStream对象,从文件输入流中读取数据
//br=new BufferedReader(fr);
InputStreamReader ist=new InputStreamReader(fr,"UTF-8");// 将输入的字节流转换成字符流,并用UTF-8编码方式
char[] data=new char[100000];//定义一个char数组
//read()方法会将读取到的字节存入缓存数组data,并且return一个int类型的已经读取过字节的数组data的长度
int len=ist.read(data);///读取字符流中的数据,用char[]数组接收
String str=String.valueOf(data,0,len);//将 char 数组 data 中的所有元素转换成字符串
System.out.println(str);//输出从文件中获取的字符串内容
ist.close();//关闭流(不关闭会占用资源)
}
//捕获异常
catch (Exception e)
{
e.printStackTrace();
}
double end = System.currentTimeMillis(); // 程序结束时间,调用系统当前时间
double time = end - begin;// 程序的运行时间
System.out.println("读完红楼梦用时:"+time/1000 + "秒");//输出执行完程序的用时,1ms=1/1000 s
}
03. 运行结果
- 编译:javac 文件名.java
- 运行:java 文件名
读完《红楼梦》CPU用时:106秒