Heim > Backend-Entwicklung > Golang > Konvertieren Sie die Struktur in Byte-Golang

Konvertieren Sie die Struktur in Byte-Golang

WBOY
Freigeben: 2023-05-14 21:51:38
Original
1104 Leute haben es durchsucht

In der Go-Sprache ist Struktur (Struktur) ein sehr häufiger Typ, der aus mehreren Feldern besteht. In einigen Fällen müssen wir eine Struktur in ein Byte-Array oder ein Byte-Array in eine Struktur konvertieren. Derzeit können wir einige in der Go-Sprache bereitgestellte Funktionen verwenden, um die Konvertierung durchzuführen.

  1. Struktur in Byte-Array konvertieren

Um die Struktur in ein Byte-Array zu konvertieren, können wir die folgende Methode verwenden:

package main

import (
    "bytes"
    "encoding/binary"
    "fmt"
)

type User struct {
    Name string
    Age  int
}

func main() {
    user := User{Name: "张三", Age: 18}
    buf := new(bytes.Buffer)
    err := binary.Write(buf, binary.BigEndian, user)
    if err != nil {
        fmt.Println("write error:", err)
        return
    }
    fmt.Println(buf.Bytes()) // [0 0 0 6 232 173 153 229 156 168 0 18]
}
Nach dem Login kopieren

Im obigen Code haben wir binary.Write</code > verwendet. Die Funktion konvertiert die Strukturieren Sie <code>Benutzer in ein Byte-Array, wobei die Variable buf der zu schreibende Puffer ist. binary.Write函数将结构体User转换为字节数组,其中buf变量为写入的缓冲区。

  1. 将字节数组转换为结构体

要将字节数组转换为结构体,我们可以使用以下方法:

package main

import (
    "bytes"
    "encoding/binary"
    "fmt"
)

type User struct {
    Name string
    Age  int
}

func main() {
    data := []byte{0, 0, 0, 6, 232, 173, 153, 229, 156, 168, 0, 18}
    user := User{}
    buf := bytes.NewReader(data)
    err := binary.Read(buf, binary.BigEndian, &user)
    if err != nil {
        fmt.Println("read error:", err)
        return
    }
    fmt.Println(user) // {张三 18}
}
Nach dem Login kopieren

在上述代码中,我们使用了binary.Read函数将字节数组转换为结构体User,其中buf变量为读取的缓冲区。

总结

在Go语言中,通过使用encoding/binary

    Byte-Array in Struktur konvertieren 🎜🎜🎜Um Byte-Array in Struktur zu konvertieren, können wir die folgende Methode verwenden: 🎜rrreee🎜Im obigen Code haben wir binary.Read verwendet Die Funktion code> konvertiert das Byte-Array in die Struktur <code>Benutzer, wobei die Variable buf der Lesepuffer ist. 🎜🎜Zusammenfassung🎜🎜In der Go-Sprache können wir mithilfe der Funktionen im Paket encoding/binary problemlos eine Struktur in ein Byte-Array oder ein Byte-Array in eine Struktur umwandeln. Diese Transformation ist beim Programmieren im Web oder bei der Interaktion mit anderen Programmiersprachen nützlich und ermöglicht uns eine effizientere Verarbeitung strukturierter Daten. 🎜

Das obige ist der detaillierte Inhalt vonKonvertieren Sie die Struktur in Byte-Golang. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage