📌  相关文章
📜  如何在 Golang 中将零终止字节数组转换为字符串?

📅  最后修改于: 2021-10-24 13:19:19             🧑  作者: Mango

这里的任务是在 Golang 中将一个以零结尾的字节数组转换为字符串,可以使用以下方法:

1. 字符串()函数:用于将一个以零结尾的字节数组转换为字符串。

句法:

str := string(byteArray[:])

例子:

// Go program to illustrate how to 
// convert a zero terminated byte
// array to string.
   
package main
   
import (
        "fmt"
)
   
func main() {
       
       
    // zero terminated byte
    // array
     arr := [20]byte{'a', 'b', 'c' , '1', '2', '3'}
        
    // printing the array
     fmt.Println("Array: ", arr)
        
     // convert a zero terminated
     // byte array to string
     // using string() method
     str := string(arr[:])
        
     // printing the converting
     // string
     fmt.Println("Conversion to string: ", str)  
}

输出:

Array:  [97 98 99 49 50 51 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
Conversion to string:  abc123

2. Sprintf()函数:它还用于将零终止字节数组转换为字符串。但性能不如以前的函数。

句法:

str := fmt.Sprintf("%s", byteArray)

例子:

// Go program to illustrate how to 
// convert a zero terminated byte
// array to string.
   
package main
   
import (
        "fmt"
)
   
func main() {
       
       
    // zero terminated byte
    // array
     arr := [20]byte{'a', 'b', 'c' , '1', '2', '3'}
        
    // printing the array
     fmt.Println("Array: ", arr)
        
     // convert a zero terminated
     // byte array to string
     // using Sprintf() method
     str := fmt.Sprintf("%s", arr)
        
     // printing the converting
     // string
     fmt.Println("Conversion to string: ", str)
       
}

输出:

Array:  [97 98 99 49 50 51 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
Conversion to string:  abc123