首页 > 编程 > Java > 正文

java读取大文件简单实例

2019-11-26 15:52:01
字体:
来源:转载
供稿:网友

我要从一个文本文件中提有用的数据
文本文件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
   }
} ///

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表