/** * fill the array with zeros * * @param data Data to zero */ public static void zero(ByteBuffer data) { zero(data.array()); } }
/** * fill the array with zeros * * @param data Data to zero */ public static void zero(CharBuffer data) { zero(data.array()); }
/** * fill the array with zeros * * @param data Data to zero */ public static void zero(ByteBuffer data) { zero(data.array()); } }
/** * fill the array with zeros * * @param data Data to zero */ public static void zero(CharBuffer data) { zero(data.array()); }
/** * Convert an array of bytes to an array of chars using UTF8 encoding * * @param data Array of characters * @param zeroBuffer Zero the temporary buffer * @return Byte array */ @NotNull public static char[] toChars(@NotNull byte[] data, boolean zeroBuffer) { ByteBuffer byteBuffer = ByteBuffer.wrap(data); CharBuffer charBuffer = Charset.forName("UTF-8").decode(byteBuffer); char[] chars = Arrays.copyOfRange(charBuffer.array(), charBuffer.position(), charBuffer.limit()); if (zeroBuffer) { zero(charBuffer); } return chars; }
/** * Convert an array of characters to an array of bytes using UTF8 encoding. * * @param chars Array of characters * @param zeroBuffer Zero the temporary buffer * @return Byte array */ @NotNull public static byte[] toBytes(@NotNull char[] chars, boolean zeroBuffer) { CharBuffer charBuffer = CharBuffer.wrap(chars); ByteBuffer byteBuffer = Charset.forName("UTF-8").encode(charBuffer); byte[] bytes = Arrays.copyOfRange(byteBuffer.array(), byteBuffer.position(), byteBuffer.limit()); if (zeroBuffer) { zero(byteBuffer); } return bytes; }
/** * Convert an array of characters to an array of bytes using UTF8 encoding. * * @param chars Array of characters * @param zeroBuffer Zero the temporary buffer * @return Byte array */ @NotNull public static byte[] toBytes(@NotNull char[] chars, boolean zeroBuffer) { CharBuffer charBuffer = CharBuffer.wrap(chars); ByteBuffer byteBuffer = Charset.forName("UTF-8").encode(charBuffer); byte[] bytes = Arrays.copyOfRange(byteBuffer.array(), byteBuffer.position(), byteBuffer.limit()); if (zeroBuffer) { zero(byteBuffer); } return bytes; }
/** * Convert an array of bytes to an array of chars using UTF8 encoding * * @param data Array of characters * @param zeroBuffer Zero the temporary buffer * @return Byte array */ @NotNull public static char[] toChars(@NotNull byte[] data, boolean zeroBuffer) { ByteBuffer byteBuffer = ByteBuffer.wrap(data); CharBuffer charBuffer = Charset.forName("UTF-8").decode(byteBuffer); char[] chars = Arrays.copyOfRange(charBuffer.array(), charBuffer.position(), charBuffer.limit()); if (zeroBuffer) { zero(charBuffer); } return chars; }