'str = new String(bytes,“ UTF8”)'和'bytes = str.getBytes(“ UTF8”)'中的字节数不相同

'str = new String(bytes,“ UTF8”)'和'bytes = str.getBytes(“ UTF8”)'中的字节数不相同,第1张

'str = new String(bytes,“ UTF8”)'和'bytes = str.getBytes(“ UTF8”)'中的字节数不相同

当您按原样对字符串进行解码时

UTF-8
,是因为您将字节编码为UTF-8或兼容格式。您不能只取一个
byte[]
随机字节并将其转换为字符串,因为它是二进制数据而不是文本

您可以做的是对二进制文件使用base64编码器,并使用base64解码器将其转换回原始字节。

这样做的一种怪癖方法是使用

ISO-8859-1
,但这通常是个坏主意,因为您会混淆二进制数据和文本数据。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5134119.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-17
下一篇2022-11-17

发表评论

登录后才能评论

评论列表(0条)

    保存