PHP base64_encode加密中文字符串,使用java解码部分乱码,求破。
Example: “蘋果君华”几个字。
一开始使用的是php urlencode,然后java urldecode,“蘋”字亂碼。
后改用PHP base64_encode,再使用java decode(使用的org.apache.commons.codec.binary.Base64包),"蘋"字OK了,但“君华”倆字亂碼了。
search說是java使用的是非標準的base64解碼,so...求破。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
会乱码的原因是你的编码不一致导致的
php中的urlencode的编码是和系统编码一致的(比如windows默认gb2312,ubuntu默认utf-8)
所以首先需要确定你的系统编码,之后根据得到的系统编码在调用java的decode方法的时候,将这个编码传入(考虑到你的例子中有繁体字,所以,建议你使用utf-8编码),以下是我使用utf-8编码的例子(php环境是ubuntun下)
output: %E8%98%8B%E6%9E%9C%E5%90%9B%E5%8D%8E
output: 蘋果君华