[go] 바이너리 데이터를 다른 형식으로 변환하는 방법

1. 바이너리 데이터를 문자열로 변환하기

바이너리 데이터를 문자열로 변환하는 방법에는 여러 가지가 있습니다. Go lang에서는 string(byteData)를 사용하여 바이너리 데이터를 UTF-8 문자열로 변환할 수 있습니다.

예시:

package main

import (
    "fmt"
)

func main() {
    byteData := []byte{72, 101, 108, 108, 111} // ASCII values for "Hello"
    strData := string(byteData)
    fmt.Println(strData) // Output: Hello
}

2. 바이너리 데이터를 다른 형식으로 변환하기

바이너리 데이터를 다른 형식으로 변환하기 위해서는 각 데이터 형식에 맞게 해석해야 합니다. 예를 들어, 바이트 순서 (Endian)를 고려하여 정수로 변환하거나, 비트 연산자를 사용하여 데이터를 조작할 수 있습니다.

바이너리 데이터를 정수로 변환하는 예시:

package main

import (
	"encoding/binary"
	"fmt"
)

func main() {
	byteData := []byte{0x00, 0x00, 0x00, 0x0A} // Big-endian representation of 10
	intData := int(binary.BigEndian.Uint32(byteData))
	fmt.Println(intData) // Output: 10
}

위 예시에서는 binary.BigEndian.Uint32 함수를 사용하여 바이너리 데이터를 Big-endian으로 해석하고, 이를 부호 없는 32비트 정수로 반환합니다.

이처럼 바이너리 데이터를 다른 형식으로 변환하려면 각 데이터 형식에 맞게 처리해야 합니다.

바이너리 데이터를 다른 형식으로 변환하는 방법에 대해 알아보았습니다. 이러한 기법을 적절히 활용하여 데이터 처리 및 분석에 유용하게 활용할 수 있습니다.