java讀取大文件簡(jiǎn)單實(shí)例
我要從一個(gè)文本文件中提有用的數(shù)據(jù)
文本文件200多MB
是不是可以建一個(gè)緩存來(lái)把有用的數(shù)據(jù)一段一段的提出來(lái),請(qǐng)問該怎么做?
---------------------------------------------------------------
呵呵,200MB而已...
JAVA中可以使用內(nèi)存映射文件來(lái)操作大文件.
最大可達(dá)2GB.
下面是個(gè)簡(jiǎn)單的示例,更具體的自己看Java API DOCS或相關(guān)資料
import java.io.*;
import java.nio.*;
import java.nio.channels.*;
public class LargeMappedFiles {
static int length = 0x8FFFFFF; // 128 Mb
public static void main(String[] args) throws Exception {
MappedByteBuffer out =
new RandomAccessFile("test.dat", "rw").getChannel()
.map(FileChannel.MapMode.READ_WRITE, 0, length);
for(int i = 0; i < length; i++)
out.put((byte)'x');
System.out.println("Finished writing");
for(int i = length/2; i < length/2 + 6; i++)
System.out.print((char)out.get(i)); //read file
}
} ///
相關(guān)文章
Springboot過(guò)濾器禁止ip頻繁訪問功能實(shí)現(xiàn)
這篇文章主要介紹了Springboot過(guò)濾器禁止ip頻繁訪問功能實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04
Java基于面向?qū)ο髮?shí)現(xiàn)一個(gè)戰(zhàn)士小游戲
這篇文章主要為大家詳細(xì)介紹了Java如何基于面向?qū)ο髮?shí)現(xiàn)一個(gè)戰(zhàn)士小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手嘗試一下2022-07-07
idea使用mybatis插件mapper中的方法爆紅的解決方案
這篇文章主要介紹了idea使用mybatis插件mapper中的方法爆紅的解決方案,文中給出了詳細(xì)的原因分析和解決方案,對(duì)大家解決問題有一定的幫助,需要的朋友可以參考下2024-07-07
Java實(shí)現(xiàn)隨機(jī)出題,10道10以內(nèi)加減法計(jì)算代碼實(shí)例
這篇文章主要介紹了Java實(shí)現(xiàn)隨機(jī)出題,10道10以內(nèi)加減法計(jì)算,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04

