java数据转换--十六进制

来源:互联网 发布:最强淘宝系统txt免费 编辑:程序博客网 时间:2024/05/17 21:38

在一些应用中需要将数据包中的十六进制数进行转换,或者数据加密后传送,这里只针对十六进制与字符串在java中的简单转换记录:

 

package com.xiaoli.test;public class EncodeT {// 转化字符串为十六进制编码 public static String toHexString(String s) { String str=""; for (int i=0;i<s.length();i++) { int ch = (int)s.charAt(i); String s4 = Integer.toHexString(ch); str = str + s4; } return str; } // 转化十六进制编码为字符串 public static String toStringHex(String s) { byte[] baKeyword = new byte[s.length()/2]; for(int i = 0; i < baKeyword.length; i++) { try { baKeyword[i] = (byte)(0xff & Integer.parseInt(s.substring(i*2, i*2+2),16)); } catch(Exception e) { e.printStackTrace(); } } try { s = new String(baKeyword, "utf-8");//UTF-16le:Not }catch (Exception e1) { e1.printStackTrace(); } return s; } public static void main(String[] args){String test = "47 45 54 20 2F 64 61 74 61 2F 62 72 66 76 65 72 73 69 6F 6E"+ "2E 78 6D 6C 20 48 54 54 50 2F 31 2E 31 0D 0A 43 6F 6E 6E 65"+ "63 74 69 6F 6E 3A 20 43 6C 6F 73 65 0D 0A 41 63 63 65 70 74"+ "3A 20 74 65 78 74 2F 68 74 6D 6C 2C 61 70 70 6C 69 63 61 74"+ "69 6F 6E 2F 78 68 74 6D 6C 2B 78 6D 6C 2C 61 70 70 6C 69 63"+ "61 74 69 6F 6E 2F 78 6D 6C 3B 71 3D 30 2E 39 2C 2A 2F 2A 3B"+ "71 3D 30 2E 38 0D 0A 55 73 65 72 2D 41 67 65 6E 74 3A 20 4D"+ "6F 7A 69 6C 6C 61 2F 34 2E 30 20 28 63 6F 6D 70 61 74 69 62"+ "6C 65 3B 20 4D 53 49 45 20 37 2E 30 3B 20 57 69 6E 64 6F 77"+ "73 20 4E 54 20 35 2E 31 3B 4D 69 73 65 72 20 52 65 70 6F 72"+ "74 29 0D 0A 48 6F 73 74 3A 20 6D 69 73 65 72 75 70 64 61 74"+ "65 2E 61 6C 69 79 75 6E 2E 63 6F 6D 0D 0A 43 61 63 68 65 2D"+ "43 6F 6E 74 72 6F 6C 3A 20 6E 6F 2D 63 61 63 68 65 0D 0A 0D"+ "0A";  String test2 = test.replaceAll(" ", "");String res = toStringHex(test2);System.out.println(res);String test4 ="g ";String test5 = toHexString(test4);System.out.println(test5);}}


运行结果为:

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;Miser Report)
Host: miserupdate.aliyun.com
Cache-Control: no-cache


6720

 

原创粉丝点击