private Array readVlenData ( Variable v , Section section , DataStorage dataStorage ) throws IOException , InvalidRangeException { raf . seek ( dataStorage . filePos ) ; int nelems = readVInt ( raf ) ; Array [ ] result = new Array [ nelems ] ; for ( int elem = 0 ; elem < nelems ; elem ++ ) { int dsize = readVInt ( raf ) ; byte [ ] data = new byte [ dsize ] ; raf . readFully ( data ) ; Array dataArray = Array . factory ( v . getDataType ( ) , ( int [ ] ) null , ByteBuffer . wrap ( data ) ) ; result [ elem ] = dataArray ; } // return Array.makeObjectArray(v.getDataType(), result[0].getClass(), new int[]{nelems}, result); return Array . makeVlenArray ( new int [ ] { nelems } , result ) ; //return dataArray.section(section.getRanges()); }
lOOK probably desnt work