java 16进制byte数组 转化成UTF-8格式字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 16进制byte数组 转化成UTF-8格式字符串相关的知识,希望对你有一定的参考价值。
需求:一个16进制的byte数组,把这个数组转化成utf-8格式的字符串
一个16进制的byte数组转化成utf-8格式的字符串的方法有以下几种:
使用C语言,可以定义一个函数,将每个byte分成高4位和低4位,然后分别转换成对应的16进制字符,再拼接起来。
使用Java语言,可以使用Integer.toHexString()方法,将每个byte转换成两个16进制字符,再拼接起来。
使用Python语言,可以使用binascii.hexlify()方法,将byte数组转换成16进制字符串。
: 十六进制元素数组与字符串相互转换(C语言)_c语言16进制数组转换字符串_wangqingchuan92的博客-CSDN博客 : java中byte数组与十六进制字符串相互转换 - 腾讯云开发者社区-腾讯云 : python - How to convert a byte array to a hex string in Python? - Stack Overflow
String str = new String(bytes,"utf-8");本回答被提问者采纳
java时间转换 0点被转化成24点
public static String getDateTime()
Date d = new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd kk:mm:ss ");
sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
return sdf.format(d);
这个是我转化时间的方法,出现了问题。
当时间为00:10:00时,会被转化成24:10:00
这个是怎么回事。如何写才能变成00:10:00
字符串替换就不要发了。
monEight.set(Calendar.HOUR_OF_DAY, 0);
monEight.set(Calendar.MINUTE, 10);
monEight.set(Calendar.SECOND, 0);
monEight.set(Calendar.MILLISECOND, 0);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String effectiveTime = format.format(monEight.getTime());
System.out.println("凌晨:" + effectiveTime);
凌晨:2014-03-24 00:10:00
参考技术B 请使用 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ");而不是 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss ");本回答被提问者采纳
以上是关于java 16进制byte数组 转化成UTF-8格式字符串的主要内容,如果未能解决你的问题,请参考以下文章