Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menetapkan Go String dengan Selamat kepada Array Byte?

Bagaimana untuk Menetapkan Go String dengan Selamat kepada Array Byte?

Patricia Arquette
Lepaskan: 2024-12-16 09:00:25
asal
745 orang telah melayarinya

How to Safely Assign a Go String to a Byte Array?

Menetapkan Rentetan kepada Tatasusunan Bait dalam Go

Dalam Go, memberikan rentetan kepada tatasusunan bait boleh dilakukan melalui pelbagai kaedah. Satu pendekatan biasa ialah menukar rentetan menjadi kepingan bait menggunakan sintaks []bait(str). Walau bagaimanapun, kaedah ini tidak selamat jenis dan berkemungkinan membawa kepada kerosakan data atau tingkah laku yang tidak diingini.

Kaedah Disyorkan: Penukaran Terus

Cara yang selamat dan mudah untuk menukar rentetan kepada tatasusunan bait adalah dengan menggunakan penukaran jenis []bait() secara langsung, seperti yang dilihat dalam yang berikut contoh:

[]byte("Here is a string....")
Salin selepas log masuk

Kaedah ini mencipta tatasusunan bait dengan kandungan rentetan, memastikan keselamatan jenis dan mencegah kemungkinan isu.

Kaedah Tambahan:

  • Menggunakan Julat Gelung:

    var arr [20]byte
    str := "abc"
    for k, v := range []byte(str) {
    arr[k] = byte(v)
    }
    Salin selepas log masuk
  • Menggunakan Fungsi Salin:

    var arr [20]byte
    str := "abc"
    copy(arr[:], []byte(str))
    Salin selepas log masuk
  • Menggunakan Rentetan Manipulasi:

    var arr [20]byte
    str := "abc"
    for i := range []byte(str) {
    arr[i] = []byte(str)[i]
    }
    Salin selepas log masuk

Walau bagaimanapun, kaedah ini tidak semudah dan selamat jenis seperti pendekatan penukaran langsung. Untuk kebanyakan senario, adalah disyorkan untuk menggunakan penukaran []bait() secara langsung untuk menetapkan rentetan kepada tatasusunan bait dalam Go.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Go String dengan Selamat kepada Array Byte?. 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