2013-11-24 111 views
-3

我收到的字節串從我的服務器,像這樣:的Java字節轉換(以字符串形式)轉換成字符串

60,104,101,97,100,62,60,115,99,114,105,112

如何將其轉換爲可讀的字符串?

這是我一直試圖做的事:

String s = new String(json.get("msg").toString()); 
System.out.println("Text Decryted : " + s); 

但這只是給了我:

60,104,101,97,100,62,60,115,99,114,105,112

任何想法如何做到這一點?

+1

你最好在兩端使用類似base64的東西。 –

回答

2

從它解析一個字節數組:

String byteString = "60,104,101,97,100,62,60,115,99,114,105,112"; 
String[] byteStrings = byteString.split(","); 
byte[] bytes = new byte[byteStrings.length]; 
for (int i = 0; i < bytes.length; i++) { 
    bytes[i] = (byte)Integer.parseInt(byteStrings[i]); 
} 

然後解釋字節爲以特定字符集的字符串。找出你正在使用的字符集,以避免將來出現問題。

String string = new String(bytes, java.nio.charset.StandardCharsets.UTF_8); 

以上方法效率不高。由於您已經從服務器發送字符串,因此發送實際字符串會更有意義。如果你不能發送字符串,你應該ask about that problem