IOUtils.getStringFromReader() 读取方式为最快的

InputStream in = null;
String line = "";
long start=0,end=0;
try {
start = System.currentTimeMillis();
in = new FileInputStream(new File("D://1.txt"));
InputStreamReader stream = new InputStreamReader(in, "GBK");
char[] temp = new char[1024];
int count = 0;
while ((count = stream.read(temp)) != -1) {
line = line + new String(temp, 0, count);
}
end = System.currentTimeMillis();
System.err.println(line);
System.err.println(end - start);
in.close();
} catch (FileNotFoundException e) {
System.err.println("文件未找到");
} catch (IOException e) {
System.err.println("IO读取不一致");
}

try {
long start1 = System.currentTimeMillis();
InputStream in1 = new FileInputStream(new File("D://1.txt"));
BufferedReader br = new BufferedReader(new InputStreamReader(in1, "GBK"));
String s="";
char[] temp = new char[1024];
int count=0;
while ((count=br.read(temp)) != -1) {
s += new String(temp, 0, count);
}
in1.close();
br.close();
long end1 = System.currentTimeMillis();
System.out.println(s);
System.out.println((end-start)+"readLines"+(end1 - start1));
long start2=System.currentTimeMillis();
InputStream in2 = new FileInputStream(new File("D://1.txt"));
String is=IOUtils.getStringFromReader(new BufferedReader(new InputStreamReader(in2,"GBK")));
System.err.println(is);
long end2=System.currentTimeMillis();
System.out.println((end-start)+"readLines"+(end1 - start1)+"测试"+(end2-start2));
} catch (FileNotFoundException e) {
System.out.println("文件未找到");
} catch (IOException e) {
System.out.println("IO读取不一致");
}

java 读取文件内容 三种形式及效率对比的更多相关文章

  1. java读取文件内容常见几种方式

    ①随机读取文件内容 ②以行为单位读取文件,常用于读面向行的格式化文件 ③以字符为单位读取文件,常用于读文本,数字等类型的文件 ④以字节为单位读取文件,常用于读二进制文件,如图片.声音.影像等文件 pa ...

  2. java读取文件的几种方式性能比较

    //普通输入流读取文件内容 public static long checksumInputStream(Path filename) { try(InputStream in= Files.newI ...

  3. Java读取文件的几种方式

    package com.mesopotamia.test; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...

  4. python 逐行读取文件的三种方法

    方法一: 复制代码代码如下: f = open("foo.txt")             # 返回一个文件对象  line = f.readline()             ...

  5. java读取文件内容

    获取文件内容 picurl = "http://www.baidu.com/data.txt"; URL urlfile = new URL(picurl); BufferedRe ...

  6. java读取文件内容并输出到控制台,java中实现文件复制

    public class TestFileInputStream { public static void main(String [] args) { //读取指定文件中内容,并在控制台输出 Fil ...

  7. php读取文件内容几种正确方

    1: //方法一 用while来些fgets一行行读 2: $file_name="1.txt"; 3: $fp=fopen($file_name,'r'); 4: while(! ...

  8. Java创建线程的三种形式的区别以及优缺点

    1.实现Runnable,Callable Callable接口里定义的方法有返回值,可以声明抛出异常. 继承Callable接口实现线程 class ThreadCall implements Ca ...

  9. Java——反射三种方式的效率对比

    转载自:https://blog.csdn.net/aitcax/article/details/52694423 1 使用field(效率最高)             long start = S ...

随机推荐

  1. SQL Server 数据库的维护(二)__触发器

    --维护数据库-- --触发器-- --概述: 触发器是一种特殊类型的存储过程,用来强制执行业务规则.在调用执上,触发器不能像存储过程那样可以由用户通过T-SQL语句直接调用,而是需要有数据库所发生的 ...

  2. prolog --寻找neni (2)

    混合查询 我们可以把简单的查询连接起来,组成复杂的查询. ?- location(X,kitchen),edible(X). 简单查询只有一个目标,而混合查询可以把这些目标连接起来.从而进行较为复杂的 ...

  3. Google V8编程详解(三)Handle & HandleScope

    上一章简单的演示了一个Helloworld Demo.里面涉及到了V8的一些基本类型和概念,本章将围绕这个Demo对V8的基本类型和相关概念进行讲解. 这里还是先把Demo贴出来便于后面分析: #in ...

  4. Net分布式系统之五:C#使用Redis集群缓存

    本文介绍系统缓存组件,采用NOSQL之Redis作为系统缓存层. 一.背景 系统考虑到高并发的使用场景.对于并发提交场景,通过上一章节介绍的RabbitMQ组件解决.对于系统高并发查询,为了提供性能减 ...

  5. cf 731f

    题意:给你一组数,让你先选一个数,然后把其他数缩小成他的倍数,然后求和,求最大值. 思路:很显然,对于数i,在i*j到i*(j+1)-1之间的数都应该缩小成i*j,又由于数均小于等于200000这个通 ...

  6. 深入理解 NodeList

    在web前端编程中,我们通常会通过document.getElementsByTagName的方法取出一组相同标签的dom元素,比如: var list = document.getElementsB ...

  7. tmux 操作

    http://www.cnblogs.com/congbo/archive/2012/08/30/2649420.html https://www.digitalocean.com/community ...

  8. mouseChildren启示

    将aSprite的 mouseChildren 属性设置为 false ,可以实现mouseClick 事件的目标为 aSprite对象,而不是其子对象中的任一个.

  9. 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结

    系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...

  10. 伸缩盒 Flexible Box(旧)

    box-orient  box-pack    box-align  box-flex   box-flex-group  box-ordinal-group   box-direction  box ...