Base64 encodes bytes, so text must first use a known character encoding
UTF-8 text can include characters that occupy more than one byte. If another system decodes those bytes with a different charset, the Base64 can be valid while the displayed text is wrong. Compare decoded content with the original and keep binary output as a file when it is not actually human-readable text.