public static BiMap<Integer, String> read(DataReader in, int length) throws IOException {
        BiMap<Integer, String> map = HashBiMap.create();

        // load strings from input
        long startPos = in.position();
        long endPos = startPos + length;
        while (in.position() < endPos) {
            int index = (int) (in.position() - startPos);
            String string = in.readStringNull();
            map.put(index, string);
        }

        return map;
    }
@author Nico Bergemann <barracuda415 at yahoo.de>
disunity-core/src/main/java/info/ata4/junity/serialize/typetree/StringTable.java