Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menukar Rentetan Heksadesimal kepada Tatasusunan Byte dalam Go?

Bagaimana untuk Menukar Rentetan Heksadesimal kepada Tatasusunan Byte dalam Go?

Barbara Streisand
Lepaskan: 2024-11-14 17:09:02
asal
459 orang telah melayarinya

How to Convert Hexadecimal Strings to Byte Arrays in Go?

Memindahkan Rentetan Heksadesimal kepada Tatasusunan Byte dalam Go

Menukar rentetan perenambelasan kepada tatasusunan bait dalam Go ialah tugas biasa dalam pelbagai senario pengaturcaraan. Artikel ini menunjukkan kaedah mudah untuk mencapai ini menggunakan fungsi hex.DecodeString().

Masalah yang dihadapi ialah menukar rentetan perenambelasan "46447381" kepada tatasusunan bait yang mewakili nilai perenambelasan individu: {0x46, 0x44, 0x73, 0x81}.

Penyelesaian kepada masalah ini terletak pada memanfaatkan fungsi hex.DecodeString():

package main

import (
    "encoding/hex"
    "fmt"
)

func main() {
    s := "46447381"

    data, err := hex.DecodeString(s)
    if err != nil {
        panic(err)
    }
    fmt.Printf("% x", data)
}
Salin selepas log masuk

Penjelasan:

  1. Fungsi hex.DecodeString() mengambil rentetan perenambelasan sebagai input dan mengembalikan hirisan bait yang mengandungi nilai perenambelasan yang dinyahkod.
  2. Kepingan bait yang dinyahkod, data, kemudian dicetak menggunakan fmt.Printf( "% x", data) untuk memaparkan nilai dalam format heksadesimal.

Output:

46 44 73 81
Salin selepas log masuk

Nota:

Adalah penting untuk diingat bahawa hanya mencetak kepingan bait menggunakan fmt.Println(data) akan mengeluarkan nilai dalam format perpuluhan dan bukannya perenambelasan. Oleh itu, menggunakan fmt.Printf("% x", data) adalah penting untuk memaparkan nilai heksadesimal dengan tepat.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan Heksadesimal kepada Tatasusunan Byte dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan