Java中byte[]、String、Hex字符串等转换的方法
代码如下所示:
成都创新互联是一家集网站设计制作、网站设计、网站页面设计、网站优化SEO优化为一体的专业网络公司,已为成都等多地近百家企业提供网站建设服务。追求良好的浏览体验,以探求精品塑造与理念升华,设计最适合用户的网站页面。 合作只是第一步,服务才是根本,我们始终坚持讲诚信,负责任的原则,为您进行细心、贴心、认真的服务,与众多客户在蓬勃发展的市场环境中,互促共生。
/*输入一个byte和byte[]合并为byte[]*/ public byte[] byteMerger(byte byte_1, byte[] byte_2) { byte[] byte_3 = new byte[1 + byte_2.length]; byte_3[0] = byte_1; System.arraycopy(byte_2, 0, byte_3, 1, byte_2.length); return byte_3; } /*输入一个byte[]和byte[]合并为byte[]*/ public byte[] byteMerger(byte[] byte_1, byte[] byte_2) { byte[] byte_3 = new byte[1 + byte_2.length]; byte_3[0] = byte_1; System.arraycopy(byte_2, 0, byte_3, byte_1.length, byte_2.length); return byte_3; } /*输入一个string(16进制的字符hex eg:ff)输出为16进制的byte[],注意输入为小写的hex字符串*/ public byte[] hexStringToByte(String hex) { int len = (hex.length() / 2); byte[] result = new byte[len]; char[] achar = hex.toCharArray(); for (int i = 0; i < len; i++) { int pos = i * 2; result[i] = (byte) (charToByte(achar[pos]) << 4 | charToByte(achar[pos + 1])); } //System.out.println(Arrays.toString(result)); return result; } private byte charToByte(char c) { //return (byte) "0123456789ABCDEF".indexOf(c); return (byte) "0123456789abcdef".indexOf(c); } /*输入10进制数字字符串,输出hex字符串(2位,eg: f 则输出 0f)*/ String value= "100"; int parseInt = Integer.parseInt(value, 10); String hexString = Integer.toHexString(parseInt); if (hexString.length() < 2) { hexString = '0' + hexString; } header = header + hexString; } /*输入16进制byte[]输出16进制字符串*/ public static String byteArrayToHexStr(byte[] byteArray) { if (byteArray == null) { return null; } char[] hexArray = "0123456789ABCDEF".toCharArray(); char[] hexChars = new char[byteArray.length * 2]; for (int j = 0; j < byteArray.length; j++) { int v = byteArray[j] & 0xFF; hexChars[j * 2] = hexArray[v >>> 4]; hexChars[j * 2 + 1] = hexArray[v & 0x0F]; } return new String(hexChars); }
PS:下面看下js对url中特殊字符的转换
let str = "http%3A%2F%2Fxxxxxxxx%2Findex.php%2Fxxxxxxx%2FMember%2Fregister%3Frecommend_id%3D11442%26id%3D87"; function replaceStr(str){ str = str.replace(/%3A/g, ":"); str = str.replace(/%2F/g, "/"); str = str.replace(/%3F/g, "?"); str = str.replace(/%3D/g, "="); str = str.replace(/%26/g, "&"); str = str.replace(/%2B/g, "+"); str = str.replace(/%20/g, " "); str = str.replace(/%23/g, "#"); return str; } console.log(replaceStr(str));
总结
以上所述是小编给大家介绍的Java中byte[]、String、Hex字符串等转换的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!
当前题目:Java中byte[]、String、Hex字符串等转换的方法
标题路径:http://cdiso.cn/article/jdpdcd.html