Movatterモバイル変換


[0]ホーム

URL:


hex

packagestandard library
go1.25.2Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2025 License:BSD-3-ClauseImports:5Imported by:230,686

Details

Repository

cs.opensource.google/go/go

Links

Documentation

Overview

Package hex implements hexadecimal encoding and decoding.

Index

Examples

Constants

This section is empty.

Variables

View Source
var ErrLength =errors.New("encoding/hex: odd length hex string")

ErrLength reports an attempt to decode an odd-length inputusingDecode orDecodeString.The stream-based Decoder returnsio.ErrUnexpectedEOF instead of ErrLength.

Functions

funcAppendDecodeadded ingo1.22.0

func AppendDecode(dst, src []byte) ([]byte,error)

AppendDecode appends the hexadecimally decoded src to dstand returns the extended buffer.If the input is malformed, it returns the partially decoded src and an error.

funcAppendEncodeadded ingo1.22.0

func AppendEncode(dst, src []byte) []byte

AppendEncode appends the hexadecimally encoded src to dstand returns the extended buffer.

funcDecode

func Decode(dst, src []byte) (int,error)

Decode decodes src intoDecodedLen(len(src)) bytes,returning the actual number of bytes written to dst.

Decode expects that src contains only hexadecimalcharacters and that src has even length.If the input is malformed, Decode returns the numberof bytes decoded before the error.

Example
package mainimport ("encoding/hex""fmt""log")func main() {src := []byte("48656c6c6f20476f7068657221")dst := make([]byte, hex.DecodedLen(len(src)))n, err := hex.Decode(dst, src)if err != nil {log.Fatal(err)}fmt.Printf("%s\n", dst[:n])}
Output:Hello Gopher!

funcDecodeString

func DecodeString(sstring) ([]byte,error)

DecodeString returns the bytes represented by the hexadecimal string s.

DecodeString expects that src contains only hexadecimalcharacters and that src has even length.If the input is malformed, DecodeString returnsthe bytes decoded before the error.

Example
package mainimport ("encoding/hex""fmt""log")func main() {const s = "48656c6c6f20476f7068657221"decoded, err := hex.DecodeString(s)if err != nil {log.Fatal(err)}fmt.Printf("%s\n", decoded)}
Output:Hello Gopher!

funcDecodedLen

func DecodedLen(xint)int

DecodedLen returns the length of a decoding of x source bytes.Specifically, it returns x / 2.

funcDump

func Dump(data []byte)string

Dump returns a string that contains a hex dump of the given data. The formatof the hex dump matches the output of `hexdump -C` on the command line.

Example
package mainimport ("encoding/hex""fmt")func main() {content := []byte("Go is an open source programming language.")fmt.Printf("%s", hex.Dump(content))}
Output:00000000  47 6f 20 69 73 20 61 6e  20 6f 70 65 6e 20 73 6f  |Go is an open so|00000010  75 72 63 65 20 70 72 6f  67 72 61 6d 6d 69 6e 67  |urce programming|00000020  20 6c 61 6e 67 75 61 67  65 2e                    | language.|

funcDumper

func Dumper(wio.Writer)io.WriteCloser

Dumper returns aio.WriteCloser that writes a hex dump of all written data tow. The format of the dump matches the output of `hexdump -C` on the commandline.

Example
package mainimport ("encoding/hex""os")func main() {lines := []string{"Go is an open source programming language.","\n","We encourage all Go users to subscribe to golang-announce.",}stdoutDumper := hex.Dumper(os.Stdout)defer stdoutDumper.Close()for _, line := range lines {stdoutDumper.Write([]byte(line))}}
Output:00000000  47 6f 20 69 73 20 61 6e  20 6f 70 65 6e 20 73 6f  |Go is an open so|00000010  75 72 63 65 20 70 72 6f  67 72 61 6d 6d 69 6e 67  |urce programming|00000020  20 6c 61 6e 67 75 61 67  65 2e 0a 57 65 20 65 6e  | language..We en|00000030  63 6f 75 72 61 67 65 20  61 6c 6c 20 47 6f 20 75  |courage all Go u|00000040  73 65 72 73 20 74 6f 20  73 75 62 73 63 72 69 62  |sers to subscrib|00000050  65 20 74 6f 20 67 6f 6c  61 6e 67 2d 61 6e 6e 6f  |e to golang-anno|00000060  75 6e 63 65 2e                                    |unce.|

funcEncode

func Encode(dst, src []byte)int

Encode encodes src intoEncodedLen(len(src))bytes of dst. As a convenience, it returns the numberof bytes written to dst, but this value is alwaysEncodedLen(len(src)).Encode implements hexadecimal encoding.

Example
package mainimport ("encoding/hex""fmt")func main() {src := []byte("Hello Gopher!")dst := make([]byte, hex.EncodedLen(len(src)))hex.Encode(dst, src)fmt.Printf("%s\n", dst)}
Output:48656c6c6f20476f7068657221

funcEncodeToString

func EncodeToString(src []byte)string

EncodeToString returns the hexadecimal encoding of src.

Example
package mainimport ("encoding/hex""fmt")func main() {src := []byte("Hello")encodedStr := hex.EncodeToString(src)fmt.Printf("%s\n", encodedStr)}
Output:48656c6c6f

funcEncodedLen

func EncodedLen(nint)int

EncodedLen returns the length of an encoding of n source bytes.Specifically, it returns n * 2.

funcNewDecoderadded ingo1.10

func NewDecoder(rio.Reader)io.Reader

NewDecoder returns anio.Reader that decodes hexadecimal characters from r.NewDecoder expects that r contain only an even number of hexadecimal characters.

funcNewEncoderadded ingo1.10

func NewEncoder(wio.Writer)io.Writer

NewEncoder returns anio.Writer that writes lowercase hexadecimal characters to w.

Types

typeInvalidByteError

type InvalidByteErrorbyte

InvalidByteError values describe errors resulting from an invalid byte in a hex string.

func (InvalidByteError)Error

func (eInvalidByteError) Error()string

Source Files

View all Source files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f orF : Jump to
y orY : Canonical URL
go.dev uses cookies from Google to deliver and enhance the quality of its services and to analyze traffic.Learn more.

[8]ページ先頭

©2009-2025 Movatter.jp