UTF-8 and UTF-16 are methods to encode Unicode strings to byte sequences.
Base64 is a method to encode a byte sequence to a string.
So, these are widely different concepts and should not be confused.
Things to keep in mind:
-
Not every byte sequence represents an Unicode string encoded in UTF-8 or UTF-16.
-
Not every Unicode string represents a byte sequence encoded in Base64.