bufr/src/main/java/ucar/nc2/iosp/bufr/tables/TableA.java
static private void init() {
    String filename = BufrTables.RESOURCE_PATH + TABLEA_FILENAME;
    try (InputStream is = CodeFlagTables.class.getResourceAsStream(filename)) {

      HashMap<Integer, String> map = new HashMap<>(100);
      SAXBuilder builder = new SAXBuilder();
      org.jdom2.Document tdoc = builder.build(is);
      org.jdom2.Element root = tdoc.getRootElement();

      List<Element> elems = root.getChildren();
      for (Element elem : elems) {
        String line = elem.getChildText("No");
        String codeS = elem.getChildText("CodeFigure");
        String desc = elem.getChildText("Meaning_en");

        try {
          int code = Integer.parseInt(codeS);
          map.put(code,  desc);
        } catch (NumberFormatException e) {
          log.debug("NumberFormatException on line " + line + " in " + codeS);
        }

      }
      tableA = map;

    } catch (Exception e) {
      log.error("Can't read BUFR code table " + filename, e);
    }
  }
static private void init() {
    String filename = BufrTables.RESOURCE_PATH + TABLEA_FILENAME;
    try (InputStream is = CodeFlagTables.class.getResourceAsStream(filename)) {

      HashMap<Integer, String> map = new HashMap<>(100);
      SAXBuilder builder = new SAXBuilder();
      org.jdom2.Document tdoc = builder.build(is);
      org.jdom2.Element root = tdoc.getRootElement();

      List<Element> elems = root.getChildren();
      for (Element elem : elems) {
        String line = elem.getChildText("No");
        String codeS = elem.getChildText("CodeFigure");
        String desc = elem.getChildText("Meaning_en");

        try {
          int code = Integer.parseInt(codeS);
          map.put(code,  desc);
        } catch (NumberFormatException e) {
          log.debug("NumberFormatException on line " + line + " in " + codeS);
        }

      }
      tableA = map;

    } catch (Exception e) {
      log.error("Can't read BUFR code table " + filename, e);
    }
  }
static private void init ( ) { String filename = BufrTables . RESOURCE_PATH + TABLEA_FILENAME ; try ( InputStream is = CodeFlagTables . class . getResourceAsStream ( filename ) ) { HashMap < Integer , String > map = new HashMap <> ( 100 ) ; SAXBuilder builder = new SAXBuilder ( ) ; org . jdom2 . Document tdoc = builder . build ( is ) ; org . jdom2 . Element root = tdoc . getRootElement ( ) ; List < Element > elems = root . getChildren ( ) ; for ( Element elem : elems ) { String line = elem . getChildText ( "No" ) ; String codeS = elem . getChildText ( "CodeFigure" ) ; String desc = elem . getChildText ( "Meaning_en" ) ; try { int code = Integer . parseInt ( codeS ) ; map . put ( code , desc ) ; } catch ( NumberFormatException e ) { log . debug ( "NumberFormatException on line " + line + " in " + codeS ) ; } } tableA = map ; } catch ( Exception e ) { log . error ( "Can't read BUFR code table " + filename , e ) ; } }
/*
<BUFR_19_1_1_TableA_en>
<No>27</No>
<CodeFigure>28</CodeFigure>
<Meaning_en>Precision orbit (satellite)</Meaning_en>
<Status>Operational</Status>
</BUFR_19_1_1_TableA_en>

<Exp_BUFRTableA_E>
<No>4</No>
<CodeFigure>3</CodeFigure>
<Meaning_E>Vertical soundings (satellite)</Meaning_E>
<Status>Operational</Status>
</Exp_BUFRTableA_E>
/ * <BUFR_19_1_1_TableA_en > <No > 27< / No > <CodeFigure > 28< / CodeFigure > <Meaning_en > Precision orbit ( satellite ) < / Meaning_en > <Status > Operational< / Status > < / BUFR_19_1_1_TableA_en >