1
0
mirror of https://github.com/fumiama/go-base16384.git synced 2026-06-07 19:40:50 +08:00
Files
go-base16384/conv.go
源文雨 851f9f8666 new api
2022-03-19 19:34:32 +08:00

42 lines
839 B
Go

package base14
import (
"golang.org/x/text/encoding/unicode"
)
var format = unicode.UTF16(unicode.BigEndian, unicode.IgnoreBOM)
// UTF16BE2UTF8 to display the result as string
func UTF16BE2UTF8(b []byte) ([]byte, error) {
return format.NewDecoder().Bytes(b)
}
// UTF82UTF16BE to decode from string
func UTF82UTF16BE(b []byte) ([]byte, error) {
return format.NewEncoder().Bytes(b)
}
func EncodeFromString(s string) []byte {
return Encode(StringToBytes(s))
}
func EncodeString(s string) string {
out, err := UTF16BE2UTF8(Encode(StringToBytes(s)))
if err != nil {
return ""
}
return BytesToString(out)
}
func DecodeToString(d []byte) string {
return BytesToString(Decode(d))
}
func DecodeString(s string) string {
d, err := UTF82UTF16BE(StringToBytes(s))
if err != nil {
return ""
}
return BytesToString(Decode(d))
}