java处理获取Grib2文件数据

package net.nullschool.grib2json;

import ucar.ma2.Array;
import ucar.nc2.NetcdfFile;
import ucar.nc2.Variable;

public class GribReader {

    public static void main(String[] args) {
        String filePath = "E:/xxx/ART_ATM_GLB_0P10_6HOR_ANAL_2023010121.grib2";
        // 替换为你的 GRIB 文件路径
        try {
            NetcdfFile ncFile = NetcdfFile.open(filePath);
            // 列出文件中的所有变量
            for (Variable variable : ncFile.getVariables()) {
                System.out.println("Variable: " + variable.getFullName());
                System.out.println("Variable: " + variable.getShortName());
//                Object storage = variable.read().getStorage();
//                System.out.println(storage.toString());
//                Object storage = variable.read().get();
            }

//            String absolute_vorticity_isobaric = ncFile.findVariable("Relative_humidity_pressure_difference_layer").getDimensionsString();
//            System.out.println(absolute_vorticity_isobaric);
            // 读取特定变量的数据
//            Variable variable = ncFile.findVariable("Relative_humidity_pressure_difference_layer").slice(2,1);
            Variable variable = ncFile.findVariable("Pressure_potential_vorticity_surface");
            //获取多层数据;获取指定的第几层数据dim是 varlable中的 四个调节参数  下标为1的时候是下拉框第几个选项 比如1是第一个 ,范围值可以在variable中的shape中查看,value 是第几个选项
            Variable slice = variable.slice(1, 6);
            Array read = slice.read();
            System.out.println(read);
            // 替换为你感兴趣的变量名
            if (variable != null) {
                Array data = variable.read();
//                System.out.println("Data: " + data);
            } else {
                System.out.println("Variable not found!");
            }
        } catch (Exception  e) {
            e.printStackTrace();
        }
    }
}
需要的包 :edu.ucar:netcdf:4.3.19 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值