Существует ли какая-либо функция Kotlin JVM для сравнения части ByteArray
с CharSequence
через Charset
?
, например, что-то вроде ByteArray.matches(startInclusive: Int, other: CharSequence, charset: Charset): Boolean
:
"abcdef".toByteArray().matches(0, "abc", UTF_8)
Я не вижу необходимости создавать String
из ByteArray
для сравнения.
Я могу написать вспомогательный метод сам, но я не хочу изобретать велосипед …
РЕДАКТИРОВАТЬ: Может быть, я не могу сделать это легко без создания какого-либо String
и / или CharBuffer
. Я предполагал, что Charset
обеспечит некоторую возможность получить следующий Character
из ByteArray
, а также индекс после последнего байта, требуемого для этого Character
, но я не нашел простого способа сделать это после беглого осмотра. Есть ли причина, по которой такой механизм не будет предоставлен? Быстрее ли сразу конвертировать String
, даже если вам нужно выделить объект?