1. 程式人生 > >java如何將一個十六進位制字串轉換成ASCII字串

java如何將一個十六進位制字串轉換成ASCII字串

廢話多直接上程式碼:
	public static String x16toString(String x16 , String CharsetName) throws UnsupportedEncodingException{
		if(x16==null || "".equals(x16.trim())){
			return "";
		}
		String tempStr = "";
		byte[] b = new byte[x16.length()/2];
		for(int i=0; i<x16.length()/2; i++){
			tempStr = x16.substring(i*2, i*2+2);
			int temp = Integer.parseInt(tempStr, 16);
			b[i] = (byte) temp;
		}
		String restr = new String(b,CharsetName);
		return restr;
	}

我們運行了看看:

public static void main(String[] args) throws UnsupportedEncodingException{
		String x16 = "6563756B65792072656164206163746D6163";
		System.out.println(x16toString(x16,"US-ASCII"));
	}

輸出結果:ecukey read actmac