code: static String readString(final DataInput in) throws IOException {
  		final byte[] bytes = new byte[readInt(in)];
  		in.readFully(bytes);
  		return new String(bytes, "UTF-8");
  	}
docs: Reads a string value from the given data input.
  
  @param in the data input
  @return the read string value
  @throws NullPointerException if one of the given arguments is {@code null}
  @throws IOException if an I/O error occurs