https://github.com/deatil/go-encoding
go 常用编码解码库 (Hex/Base32/Base45/Base58/Base62/Base64/Base85/Base91/Base92/Base100/MorseITU/JSON)
https://github.com/deatil/go-encoding
base32 base64 encoding go go-encoding hex
Last synced: 7 months ago
JSON representation
go 常用编码解码库 (Hex/Base32/Base45/Base58/Base62/Base64/Base85/Base91/Base92/Base100/MorseITU/JSON)
- Host: GitHub
- URL: https://github.com/deatil/go-encoding
- Owner: deatil
- License: apache-2.0
- Created: 2022-04-03T03:31:20.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-02-08T16:25:11.000Z (8 months ago)
- Last Synced: 2025-03-17T22:08:19.884Z (7 months ago)
- Topics: base32, base64, encoding, go, go-encoding, hex
- Language: Go
- Homepage: https://pkg.go.dev/github.com/deatil/go-encoding
- Size: 105 KB
- Stars: 25
- Watchers: 2
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## go-encoding
[中文](README_CN.md) | English
### Desc
* data encoding/decoding pkg
* encodings has some (Hex/Base32/Base36/Base45/Base58/Base62/Base64/Base85/Base91/Base92/Base100/MorseITU/JSON)### Download
~~~go
go get -u github.com/deatil/go-encoding
~~~### Get Starting
~~~go
package mainimport (
"fmt"
"github.com/deatil/go-encoding/encoding"
)func main() {
oldData := "useData"// Base64 Encode
base64Data := encoding.
FromString(oldData).
Base64Encode().
ToString()
fmt.Println("Base64 Encoded:", base64Data)// Base64 Decode
base64DecodeData := encoding.
FromString(base64Data).
Base64Decode().
ToString()
fmt.Println("Base64 Decoded:", base64DecodeData)
}
~~~### Use encoding
~~~go
base64Data := encoding.
FromString(oldData). // input data
Base64Encode(). // encoding/decoding type
ToString() // output data
~~~### Input and Output
* Input:
`FromBytes(data []byte)`, `FromString(data string)`, `FromReader(reader io.Reader)`
* Output:
`String() string`, `ToBytes() []byte`, `ToString() string`, `ToReader() io.Reader`### Encoding Types
* Decode:
`Base32Encode()`, `Base32RawEncode()`, `Base32HexEncode()`,`Base32RawHexEncode()`, `Base32EncodeWithEncoder(encoder string)`, `Base32RawEncodeWithEncoder(encoder string)`,
`Base45Encode()`,
`Base58Encode()`,
`Base62Encode()`,
`Base64Encode()`, `Base64URLEncode()`, `Base64RawEncode()`, `Base64RawURLEncode()`, `Base64SegmentEncode()`, `Base64EncodeWithEncoder(encoder string)`,
`Base85Encode()`,
`Base91Encode()`,
`Base100Encode()`,
`Basex2Encode()`, `Basex16Encode()`, `Basex62Encode()`, `BasexEncodeWithEncoder(encoder string)`,
`HexEncode()`,
`MorseITUEncode()`,
`SafeURLEncode()`,
`SerializeEncode()`,
`JSONEncode(data any)`, `JSONIteratorEncode(data any)`, `JSONIteratorIndentEncode(v any, prefix, indent string)`,
`GobEncode(data any)`* Encode:
`Base32Decode()`, `Base32RawDecode()`, `Base32HexDecode()`,`Base32RawHexDecode()`, `Base32DecodeWithEncoder(encoder string)`, `Base32RawDecodeWithEncoder(encoder string)`,
`Base45Decode()`,
`Base58Decode()`,
`Base62Decode()`,
`Base64Decode()`, `Base64URLDecode()`, `Base64RawDecode()`, `Base64RawURLDecode()`, `Base64SegmentDecode(paddingAllowed ...bool)`, `Base64DecodeWithEncoder(encoder string)`,
`Base85Encode()`,
`Base91Decode()`,
`Base100Decode()`,
`Basex2Decode()`, `Basex16Decode()`, `Basex62Decode()`, `BasexDecodeWithEncoder(encoder string)`,
`HexDecode()`,
`MorseITUDecode()`,
`SafeURLDecode()`,
`SerializeDecode()`,
`JSONDecode(dst any)`, `JSONIteratorDecode(dst any)`,
`GobDecode(dst any)`### LICENSE
* The library LICENSE is `Apache2`, using the library need keep the LICENSE.
### Copyright
* Copyright deatil(https://github.com/deatil).