grib/src/main/java/ucar/nc2/grib/grib2/table/KmaLocalTables.java
private void initLocalTable() {
    String tablePath = config.getPath();
    ClassLoader cl = KmaLocalTables.class.getClassLoader();
    try (InputStream is = cl.getResourceAsStream(tablePath)) {
    if (is == null) throw new IllegalStateException("Cant find "+tablePath);

    List<TableParser.Record> recs = TableParser.readTable(is, "41,112,124i,136i,148i,160", 1000);
    for (TableParser.Record record : recs) {
      String name = (String) record.get(0);
      int disc = (Integer) record.get(2);
      int cat = (Integer) record.get(3);
      int param = (Integer) record.get(4);
      String unit = (String) record.get(5);

      Grib2Parameter s = new Grib2Parameter(disc,cat,param,name,unit,null,null);
      local.put(makeParamId(disc, cat, param), s);
    }

    } catch (IOException ioe) {
      throw new RuntimeException(ioe);
    }
  }
private void initLocalTable() {
    String tablePath = config.getPath();
    ClassLoader cl = KmaLocalTables.class.getClassLoader();
    try (InputStream is = cl.getResourceAsStream(tablePath)) {
    if (is == null) throw new IllegalStateException("Cant find "+tablePath);

    List<TableParser.Record> recs = TableParser.readTable(is, "41,112,124i,136i,148i,160", 1000);
    for (TableParser.Record record : recs) {
      String name = (String) record.get(0);
      int disc = (Integer) record.get(2);
      int cat = (Integer) record.get(3);
      int param = (Integer) record.get(4);
      String unit = (String) record.get(5);

      Grib2Parameter s = new Grib2Parameter(disc,cat,param,name,unit,null,null);
      local.put(makeParamId(disc, cat, param), s);
    }

    } catch (IOException ioe) {
      throw new RuntimeException(ioe);
    }
  }
private void initLocalTable ( ) { String tablePath = config . getPath ( ) ; ClassLoader cl = KmaLocalTables . class . getClassLoader ( ) ; try ( InputStream is = cl . getResourceAsStream ( tablePath ) ) { if ( is == null ) throw new IllegalStateException ( "Cant find " + tablePath ) ; List < TableParser . Record > recs = TableParser . readTable ( is , "41,112,124i,136i,148i,160" , 1000 ) ; for ( TableParser . Record record : recs ) { String name = ( String ) record . get ( 0 ) ; int disc = ( Integer ) record . get ( 2 ) ; int cat = ( Integer ) record . get ( 3 ) ; int param = ( Integer ) record . get ( 4 ) ; String unit = ( String ) record . get ( 5 ) ; Grib2Parameter s = new Grib2Parameter ( disc , cat , param , name , unit , null , null ) ; local . put ( makeParamId ( disc , cat , param ) , s ) ; } } catch ( IOException ioe ) { throw new RuntimeException ( ioe ) ; } }
see http://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc.shtml
see http : // www . nco . ncep . noaa . gov / pmb / docs / grib2 / grib2_doc . shtml