差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

Both sides previous revision 前次修改
下次修改
前次修改
下次修改 Both sides next revision
java:basic:converter [2016/11/22 11:19]
tony 移除
java:basic:converter [2016/11/22 13:30]
tony [Hex String to byte array]
行 2: 行 2:
 ====== Converter ====== ====== Converter ======
 ===== Hex String to byte array ===== ===== Hex String to byte array =====
 +目的是將0x8086轉為長度為2的byte array,內容為{0x80,​ 0x86}:
 <code java> <code java>
-private ​byte[] ​toBytes(String hexStr){ + static public ​byte[] ​parseHextringtoBytes(String hexStr){ 
- hexStr = hexStr.replaceAll("​0[x|X]",​ ""​);​ + hexStr = hexStr.replaceAll("​0[x|X]",​ ""​);​ 
- return new BigInteger(hexStr, 16).toByteArray(); + if( hexStr.length() % 2 != 0 ) { 
-}+ hexStr = "​0"​.concat(hexStr);​ 
 +
 + char[] hexChars = hexStr.toCharArray();​ 
 + byte[] b = new byte[hexStr.length() / 2]; 
 + for (int i = 0; i < b.length; i++) { 
 + int index = i * 2; 
 + int v = Integer.parseInt(String.valueOf(Arrays.copyOfRange(hexChars,​ index, index+2)), 16)
 + b[i] = (bytev; 
 +
 + return b
 + }
 </​code>​ </​code>​
- 
-