Avatar ·

बाइट ऐरे को हेक्साडेसिमल स्ट्रिंग में कैसे बदलें Java में?

सभी को नमस्ते! मैं Java में नया हूँ और मुझे एक समस्या का सामना करना पड़ा: मुझे एक byte[] array को एक string में बदलना है, जो इन बाइट्स का hexadecimal (hex) प्रतिनिधित्व हो। उदाहरण के लिए, अगर मेरे पास byte[] {0x0A, 0xFF, 0x1B} array है, तो मैं "0AFF1B" string प्राप्त करना चाहता हूँ।\n\nसमस्या यह है कि जब मैं new String(bytes) का उपयोग करके byte array से string बनाने की कोशिश करता हूँ, तो मुझे अजीब अक्षर मिलते हैं, hex प्रतिनिधित्व नहीं। मैं समझता हूँ कि यह गलत है, क्योंकि String को एन्कोडिंग में कैरेक्टर चाहिए, न कि मनमाने बाइट्स।\n\nमैंने एक सरल कोड लिखा है जो इसे मैन्युअल रूप से करने की कोशिश करता है:\n\n```java\npublic static String bytesToHex(byte[] bytes) {\n StringBuilder sb = new StringBuilder();\n for (byte b : bytes) {\n sb.append(Integer.toHexString(b & 0xFF));\n }\n return s