code: public static String readString(ByteBuffer byteBuffer) {
  
          ByteArrayOutputStream out = new ByteArrayOutputStream();
          int read;
          while ((read = byteBuffer.get()) != 0) {
              out.write(read);
          }
          return Utf8.convert(out.toByteArray());
      }
docs: Reads a zero terminated UTF-8 string.
  
  @param byteBuffer the data source
  @return the string readByte
  @throws Error in case of an error in the underlying stream