Di Golang, jenis bait ialah jenis data primitif, biasanya digunakan untuk mewakili data bait tunggal, seperti strim bait, fail, dsb. Jenis rentetan ialah jenis komposit yang digunakan untuk mewakili rentetan. Apabila kita perlu menukar data jenis bait kepada jenis rentetan, kita boleh menggunakan fungsi penukaran dalam pustaka standard Golang.
1. Dua cara untuk menukar bait kepada rentetan
Dalam Golang, terdapat dua cara untuk menukar tatasusunan bait kepada jenis rentetan, iaitu menggunakan pakej strconv dan menggunakan kaedah string().
Pakej strconv ialah salah satu perpustakaan standard untuk penukaran jenis dalam Golang Fungsi string() boleh menukar tatasusunan bait kepada jenis rentetan. . Penggunaannya adalah seperti berikut:
package main import ( "fmt" "strconv" ) func main() { bytes := []byte{97, 98, 99, 100, 101} // a b c d e str := string(bytes) fmt.Println("str: ", str) // 输出:str: abcde str2 := strconv.Itoa(12345) fmt.Println("str2: ", str2) // 输出:str2: 12345 }
Dalam kod di atas, kami mentakrifkan tatasusunan jenis bait, menukarnya menjadi str pembolehubah jenis rentetan dan mengeluarkan nilainya. Selain itu, kami menggunakan fungsi Itoa() daripada pakej strconv untuk menukar jenis integer kepada jenis rentetan dan mengeluarkan nilainya.
Di Golang, jenis rentetan itu sendiri sebenarnya jenis pembungkusan tatasusunan bait, jadi kaedah rentetan() boleh digunakan untuk menukar tatasusunan bait kepada String. Penggunaannya adalah seperti berikut:
package main import ( "fmt" ) func main() { bytes := []byte{97, 98, 99, 100, 101} // a b c d e str := string(bytes) fmt.Println("str: ", str) // 输出:str: abcde }
Dalam kod di atas, kami juga mentakrifkan tatasusunan jenis bait, menukarnya menjadi str pembolehubah jenis rentetan dan mengeluarkan nilainya. Kaedah string() digunakan di sini untuk penukaran.
2. Penukaran antara tatasusunan bait dan rentetan
Selain menukar data bait individu kepada rentetan, kami juga boleh menukar tatasusunan yang mengandungi data berbilang bait kepada rentetan.
Untuk menukar tatasusunan bait kepada rentetan, anda boleh menggunakan dua kaedah yang diperkenalkan di atas Kod ini dilaksanakan seperti berikut:
rreeeUntuk menukar rentetan kepada tatasusunan bait, anda perlu menggunakan fungsi []bait() dalam pustaka standard Golang. Penggunaannya adalah seperti berikut:
package main import ( "fmt" ) func main() { bytes := []byte{97, 98, 99, 100, 101} // a b c d e str := string(bytes) fmt.Println("str: ", str) // 输出:str: abcde }
Dalam kod di atas, kita mula-mula mentakrifkan pembolehubah rentetan, menukarnya menjadi tatasusunan bait dan mengeluarkan nilainya.
3. Langkah berjaga-jaga
Dalam proses menggunakan bait ke rentetan, anda perlu memberi perhatian kepada isu berikut:
Memandangkan aksara Cina mungkin menduduki berbilang bait, apabila menukar tatasusunan bait kepada rentetan, anda perlu menentukan format pengekodan tatasusunan bait. Contohnya, di bawah pengekodan UTF-8, aksara Cina biasanya menduduki 3 bait. Oleh itu, anda perlu memberi perhatian kepada format pengekodan dan panjang aksara semasa proses penukaran.
Apabila menggunakan kaedah rentetan() untuk penukaran, anda perlu memberi perhatian kepada panjang rentetan asal dan rentetan baharu Jika rentetan asal mengandungi aksara NULL ('.
Atas ialah kandungan terperinci byte 转string golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!