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