好吧,所以我想將一個十六進制字符串轉換爲二進制字符串,以便我可以做一些掉期和下行等下行,我遇到了我認爲這裏的答案Convert hex string to binary string但這造成了一些問題。將十六進制字符串轉換爲二進制字符串 - Java
String hexToBinary(String hexadecimalString) {
int i = Integer.parseInt(hexadecimalString, 16);
String binaryString = Integer.toBinaryString(i);
return binaryString;
}
但是,例如,如果我傳遞了十六進制字符串「03」它只會返回一個二進制字符串「11」。或者如果我要傳入十六進制字符串「41」,它會返回一個二進制字符串「1000001」。 我該如何使它始終返回長度爲8位的二進制字符串? 所有幫助提前非常感謝:)
試過你的填充二進制字符串的建議,但它沒有工作,這是我試過,你能看到我做了什麼錯?
String hexToBinary(String hexString) {
int i = Integer.parseInt(hexString, 16);
String binaryString = Integer.toBinaryString(i);
String padded = String.format("%8s", binaryString.replace(' ', '0'));
return padded;
}
檢查這一點。 http://stackoverflow.com/questions/9246326/convert-hexadecimal-string-hex-to-a-binary-string – Imran
你只需要用零填充直到你的字符串長8個字符 – JonK
'replace() '必須對'String.format()'的結果調用''不在'binrayString'上。 – SubOptimal