java - द्विआधारी स्ट्रिंग को बाइट सरणी में कनवर्ट करें




string binary (2)

मेरे पास एक स्ट्रिंग है जो और शून्य है जो मैं बाइट्स की एक सरणी में कनवर्ट करना चाहता हूं।

उदाहरण के लिए String b = "0110100001101001" मैं इसे कैसे 2 के byte[] में परिवर्तित कर सकता हूँ?


इसे बेस 2 में एक पूर्णांक में पार्स करें, फिर एक बाइट सरणी में कनवर्ट करें। वास्तव में, जब से आपके पास 16 बिट्स हैं, तो इसका इस्तेमाल शायद ही कम इस्तेमाल की गई short अवधि को तोड़ने का है।

short a = Short.parseShort(b, 2);
ByteBuffer bytes = ByteBuffer.allocate(2).putShort(a);

byte[] array = bytes.array();

एक और सरल दृष्टिकोण है:

String b = "0110100001101001";
byte[] bval = new BigInteger(b, 2).toByteArray();







bit