Spec-Zone.ru › Kotlin 2

bytePrefix

kotlin-stdlib/kotlin.text/HexFormat/BytesHexFormat/bytePrefix

Версия Kotlin: 2.2

val bytePrefix: String

Строка, которая непосредственно предшествует двухзначному шестнадцатеричному представлению каждого байта.

При форматировании эта строка используется в качестве префикса шестнадцатеричного представления каждого байта.

При разборе шестнадцатеричное представление каждого байта должно иметь этот префикс. Разбор этого префикса выполняется без учета регистра.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   val data = ByteArray(4) { it.toByte() }

// By default, the bytePrefix is an empty string, so bytes are formatted without any prefix.
println(data.toHexString()) // 00010203
println("\"00010203\".hexToByteArray().contentEquals(data) is ${"00010203".hexToByteArray().contentEquals(data)}") // true

// Specifying a custom byte prefix, "0x" in this case, to precede each byte.
// A space is used as a byte separator for clarity in the output.
val bytePrefixFormat = HexFormat {
    bytes.bytePrefix = "0x"
    bytes.byteSeparator = " "
}
println(data.toHexString(bytePrefixFormat)) // 0x00 0x01 0x02 0x03
println("\"0x00 0x01 0x02 0x03\".hexToByteArray(bytePrefixFormat).contentEquals(data) is ${"0x00 0x01 0x02 0x03".hexToByteArray(bytePrefixFormat).contentEquals(data)}") // true

// Parsing fails due to incorrect byte prefix.
// In this case, the input string is lacking the necessary byte prefixes.
// "00 01 02 03".hexToByteArray(bytePrefixFormat) // will fail with IllegalArgumentException 
   //sampleEnd
}

© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.text/-hex-format/-bytes-hex-format/byte-prefix.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API