欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java读取大文件简单实例

程序员文章站 2024-02-17 09:48:58
我要从一个文本文件中提有用的数据 文本文件200多mb 是不是可以建一个缓存来把有用的数据一段一段的提出来,请问该怎么做? ------------------------...

我要从一个文本文件中提有用的数据
文本文件200多mb
是不是可以建一个缓存来把有用的数据一段一段的提出来,请问该怎么做?
---------------------------------------------------------------

呵呵,200mb而已...
java中可以使用内存映射文件来操作大文件.
最大可达2gb.
下面是个简单的示例,更具体的自己看java api docs或相关资料

复制代码 代码如下:

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
   }
} ///