groovy/java 从特定行开始读取二进制文件

该博客介绍了如何使用Groovy从Java的二进制文件中,从特定行开始读取数据。通过FileInputStream和字节数组进行操作,跳过起始位置,将读取到的数据转换为浮点数并存储到Map中。
摘要由CSDN通过智能技术生成

import java.io.FileInputStream;

File file = new File("G:\\data.bin");  
FileInputStream fin = new FileInputStream(file);
byte[] b= new byte[32];     //创建合适文件大小的数组,数据的长度代表一次读取几个字节
byte bb ;
 int j=0;
 int num=8;
 Map<Integer,List> map=new HashMap();
 for(int k=0;k<num;k++){
     List list =new ArrayList();
     map.put(k,list);
 }
 long from = 32*2+1;
 fin.skip(from-1);//选择从多少行开始读取
 double temp;
            while((bytesIn = fin.read(b, 0, 32)) != -1)  
            {  

            for(int i=0;i<num;i++){//每四个字节一个数,循环解析
                
                temp=getFloat(b,i*4);
                map.get(i).add(temp);
            }
               j++;
            }
            for(int i=0;i<num;i+&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值