Spec-Zone.ru › Kotlin 2

toHexString

kotlin-stdlib/kotlin.text/toHexString

Начиная с Kotlin: 2.2

fun ByteArray.toHexString(format: HexFormat = HexFormat.Default): String
@ExperimentalUnsignedTypes
inline fun UByteArray.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует байты в этом массиве, используя указанный формат.

Обратите внимание: на результат форматирования этого массива байтов влияют только свойства HexFormat.upperCase и HexFormat.bytes экземпляра формата.

Каждый байт массива преобразуется в две шестнадцатеричные цифры. Первая цифра представляет 4 старших бита, а вторая — 4 младших бита байта. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.bytes задает строки, добавляемые перед и после представления каждого байта, а также определяет порядок расположения этих представлений.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.BytesHexFormat.

Возвращает

результат форматирования этого массива с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Вызывает исключение

IllegalArgumentException

если длина результата превышает максимальную емкость String.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   val data = byteArrayOf(0xDE.toByte(), 0x2D, 0x02, 0xC0.toByte(), 0x5C, 0x0E)

// Using the default format
println(data.toHexString()) // de2d02c05c0e

// Using a custom format
val format = HexFormat {
    upperCase = true
    bytes {
        bytesPerLine = 4
        byteSeparator = " " // One space
        bytePrefix = "0x"
    }
}
println(data.toHexString(format)) // 0xDE 0x2D 0x02 0xC0\n0x5C 0x0E

// Formatting a segment of the byte array
println(data.toHexString(startIndex = 2, endIndex = 5, format)) // 0x02 0xC0 0x5C

// Formatting unsigned bytes with the same binary representations yields the same string
val unsignedData = data.toUByteArray()
println(unsignedData.toHexString(format)) // 0xDE 0x2D 0x02 0xC0\n0x5C 0x0E 
   //sampleEnd
}

fun ByteArray.toHexString(startIndex: Int = 0, endIndex: Int = size, format: HexFormat = HexFormat.Default): String
@ExperimentalUnsignedTypes
inline fun UByteArray.toHexString(startIndex: Int = 0, endIndex: Int = size, format: HexFormat = HexFormat.Default): String

Форматирует байты в этом массиве, используя указанный формат.

Обратите внимание: на результат форматирования этого массива байтов влияют только свойства HexFormat.upperCase и HexFormat.bytes экземпляра формата.

Каждый байт массива преобразуется в две шестнадцатеричные цифры. Первая цифра представляет 4 старших бита, а вторая — 4 младших бита байта. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.bytes задает строки, добавляемые перед и после представления каждого байта, а также определяет порядок расположения этих представлений.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.BytesHexFormat.

Возвращает

результат форматирования этого массива с использованием указанного формата.

Параметры

startIndex

начало (включительно) форматируемого поддиапазона; по умолчанию — 0.

endIndex

конец (не включительно) форматируемого поддиапазона; по умолчанию — размер этого массива.

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Вызывает исключение

IndexOutOfBoundsException

если startIndex или endIndex выходит за пределы индексов этого массива.

IllegalArgumentException

если длина результата превышает максимальную емкость String.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   val data = byteArrayOf(0xDE.toByte(), 0x2D, 0x02, 0xC0.toByte(), 0x5C, 0x0E)

// Using the default format
println(data.toHexString()) // de2d02c05c0e

// Using a custom format
val format = HexFormat {
    upperCase = true
    bytes {
        bytesPerLine = 4
        byteSeparator = " " // One space
        bytePrefix = "0x"
    }
}
println(data.toHexString(format)) // 0xDE 0x2D 0x02 0xC0\n0x5C 0x0E

// Formatting a segment of the byte array
println(data.toHexString(startIndex = 2, endIndex = 5, format)) // 0x02 0xC0 0x5C

// Formatting unsigned bytes with the same binary representations yields the same string
val unsignedData = data.toUByteArray()
println(unsignedData.toHexString(format)) // 0xDE 0x2D 0x02 0xC0\n0x5C 0x0E 
   //sampleEnd
}

fun Byte.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа Byte, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа Byte в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value: Byte = 58
println(value.toHexString()) // 3a

// Converts the Byte to an unsigned hexadecimal representation
println((-1).toByte().toHexString()) // ff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number {
        prefix = "\\u" // A Unicode escape prefix
        minLength = 4
    }
}
println(value.toHexString(format)) // \\u003A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue: UByte = 58u
println(uValue.toHexString(format)) // \\u003A 
   //sampleEnd
}

fun Short.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа Short, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа Short в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value: Short = 58
println(value.toHexString()) // 003a

// Converts the Short to an unsigned hexadecimal representation
println((-1).toShort().toHexString()) // ffff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number {
        prefix = "0x"
        removeLeadingZeros = true
    }
}
println(value.toHexString(format)) // 0x3A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue: UShort = 58u
println(uValue.toHexString(format)) // 0x3A 
   //sampleEnd
}

fun Int.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа Int, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа Int в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value = 58
println(value.toHexString()) // 0000003a

// Converts the Int to an unsigned hexadecimal representation
println((-1).toHexString()) // ffffffff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number {
        prefix = "#"
        removeLeadingZeros = true
        minLength = 6
    }
}
println(value.toHexString(format)) // #00003A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue = 58u
println(uValue.toHexString(format)) // #00003A 
   //sampleEnd
}

fun Long.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа Long, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа Long в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value = 58L
println(value.toHexString()) // 000000000000003a

// Converts the Long to an unsigned hexadecimal representation
println((-1L).toHexString()) // ffffffffffffffff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number.removeLeadingZeros = true
}
println(value.toHexString(format)) // 3A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue = 58uL
println(uValue.toHexString(format)) // 3A 
   //sampleEnd
}

inline fun UByte.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа UByte, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа UByte в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value: Byte = 58
println(value.toHexString()) // 3a

// Converts the Byte to an unsigned hexadecimal representation
println((-1).toByte().toHexString()) // ff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number {
        prefix = "\\u" // A Unicode escape prefix
        minLength = 4
    }
}
println(value.toHexString(format)) // \\u003A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue: UByte = 58u
println(uValue.toHexString(format)) // \\u003A 
   //sampleEnd
}

inline fun UShort.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа UShort, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа UShort в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value: Short = 58
println(value.toHexString()) // 003a

// Converts the Short to an unsigned hexadecimal representation
println((-1).toShort().toHexString()) // ffff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number {
        prefix = "0x"
        removeLeadingZeros = true
    }
}
println(value.toHexString(format)) // 0x3A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue: UShort = 58u
println(uValue.toHexString(format)) // 0x3A 
   //sampleEnd
}

inline fun UInt.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа UInt, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа UInt в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value = 58
println(value.toHexString()) // 0000003a

// Converts the Int to an unsigned hexadecimal representation
println((-1).toHexString()) // ffffffff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number {
        prefix = "#"
        removeLeadingZeros = true
        minLength = 6
    }
}
println(value.toHexString(format)) // #00003A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue = 58u
println(uValue.toHexString(format)) // #00003A 
   //sampleEnd
}

inline fun ULong.toHexString(format: HexFormat = HexFormat.Default): String

Форматирует это значение типа ULong, используя указанный формат.

Обратите внимание: на результат форматирования этого числового значения влияют только свойства HexFormat.upperCase и HexFormat.number экземпляра формата.

Эта функция преобразует значение типа ULong в его шестнадцатеричное представление, сопоставляя каждый четырехбитный фрагмент двоичного представления соответствующей шестнадцатеричной цифре, начиная со старших битов. Свойство HexFormat.upperCase определяет, будут ли для этого преобразования использоваться шестнадцатеричные цифры в верхнем (0-9, A-F) или нижнем (0-9, a-f) регистре. Свойство HexFormat.number регулирует длину шестнадцатеричного представления, добавляя или удаляя при необходимости ведущие нули, а также задает строки, добавляемые перед и после полученного представления.

Подробную информацию о доступных параметрах формата и их влиянии на форматирование см. в разделе HexFormat.NumberHexFormat.

Возвращает

результат форматирования этого значения с использованием указанного формата.

Параметры

format

HexFormat, используемый для форматирования; по умолчанию — HexFormat.Default.

Примеры

import kotlin.test.*

fun main() { 
   //sampleStart 
   // Using the default format
val value = 58L
println(value.toHexString()) // 000000000000003a

// Converts the Long to an unsigned hexadecimal representation
println((-1L).toHexString()) // ffffffffffffffff

// Using a custom format
val format = HexFormat {
    upperCase = true
    number.removeLeadingZeros = true
}
println(value.toHexString(format)) // 3A

// Formatting an unsigned value with the same binary representations yields the same string
val uValue = 58uL
println(uValue.toHexString(format)) // 3A 
   //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/to-hex-string.html

Spec-Zone.ru

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