通常读取一个文件都是直接把这个文件转化为流的形式,但是对于一个容量为几个G的文件,这很显然是不明智的做法,当前我需要将几个G的文件读取,然后插入到数据库,使用的是一个commons的jar包,尝试了一下,真的很不错。
pom
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
demo
@Test
void insert() throws Exception {
LineIterator it = FileUtils.lineIterator(new File("E:\\1\\jingyou.json"));
try {
while (it.hasNext()) {
String line = it.nextLine();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
LineIterator.closeQuietly(it);
}
}