当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


GO Write用法及代码示例


GO语言"encoding/binary"包中"Write"函数的用法及代码示例。

用法:

func Write(w io.Writer, order ByteOrder, data any) error

Write 将数据的二进制表示写入 w。数据必须是固定大小的值或固定大小的切片,或指向此类数据的指针。布尔值编码为一个字节:1 为真,0 为假。写入 w 的字节使用指定的字节顺序进行编码,并从数据的连续字段中读取。编写结构时,将为具有空白 (_) 字段名称的字段写入零值。

例子:

package main

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

func main() {
	buf := new(bytes.Buffer)
	var pi float64 = math.Pi
	err := binary.Write(buf, binary.LittleEndian, pi)
	if err != nil {
		fmt.Println("binary.Write failed:", err)
	}
	fmt.Printf("% x", buf.Bytes())
}

输出:

18 2d 44 54 fb 21 09 40

示例(多):

package main

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

func main() {
	buf := new(bytes.Buffer)
	var data = []any{
		uint16(61374),
		int8(-54),
		uint8(254),
	}
	for _, v := range data {
		err := binary.Write(buf, binary.LittleEndian, v)
		if err != nil {
			fmt.Println("binary.Write failed:", err)
		}
	}
	fmt.Printf("%x", buf.Bytes())
}

输出:

beefcafe

相关用法


注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Write。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。