Search code examples
stringcharacter-encodinggobyte-shifting

How to convert a string to a byte array which is compiled with a given charset in Go?


In java, we can use the method of String : byte[] getBytes(Charset charset) . This method Encodes a String into a sequence of bytes using the given charset, storing the result into a new byte array.

But how to do this in GO? Is there any similar way in Go can do this?

Please let me know it.


Solution

  • The standard Go library only supports Unicode (UTF-8, UTF-16, UTF-32) and ASCII encoding. ASCII is a subset of UTF-8.

    The go-charset package (found from here) supports conversion to and from UTF-8 and it also links to the GNU iconv library.

    See also field CharsetReader in encoding/xml.Decoder.