[go] go 언어에서의 encoding/hex 패키지와 자동화 및 스크립팅

Go 언어는 바이트 데이터를 다루는 데 가장 적합한 언어 중 하나입니다. encodinghex 패키지를 사용하여 데이터를 인코딩하고 디코딩하며, 자동화 및 스크립팅에서 유용하게 활용할 수 있습니다.

Encoding 패키지

Go의 encoding 패키지는 다양한 형식으로 데이터를 인코딩하고 디코딩하는 데 사용됩니다. 예를 들어, json 패키지는 데이터를 JSON 형식으로 인코딩하거나 디코딩할 수 있습니다.

// 예제 코드
package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name  string
	Age   int
	Title string
}

func main() {
	p := Person{Name: "Alice", Age: 30, Title: "Software Engineer"}
	b, err := json.Marshal(p)
	if err != nil {
		fmt.Println("Error:", err)
		return
	}
	fmt.Println(string(b)) // 결과: {"Name":"Alice","Age":30,"Title":"Software Engineer"}
}

Hex 패키지

Go의 hex 패키지는 바이트 데이터를 16진수로 인코딩하거나 디코딩하는 데 사용됩니다.

// 예제 코드
package main

import (
	"encoding/hex"
	"fmt"
)

func main() {
	str := "Hello, world!"
	enc := hex.EncodeToString([]byte(str))
	fmt.Println(enc) // 결과: 48656c6c6f2c20776f726c6421
	dec, _ := hex.DecodeString(enc)
	fmt.Println(string(dec)) // 결과: Hello, world!
}

자동화 및 스크립팅

위의 패키지들은 파일이나 네트워크에서 데이터를 읽고 쓰는 등의 자동화 및 스크립팅 작업에 유용하게 활용될 수 있습니다.

자세한 내용은 Go 공식 문서를 참고하세요.