स्ट्रिंग हमेशा "0x" के साथ शुरू होता है और हेक्साडेसिमल है:
String str = "0x9999999999999999";
BigInteger number = new BigInteger(str.substring(2));
बेहतर, देखें कि क्या यह "0x"
String str = "0x9999999999999999";
BigInteger number;
if (str.startsWith("0x")) {
number = new BigInteger(str.substring(2), 16);
} else {
// Error handling: throw NumberFormatException or something similar
// or try as decimal: number = new BigInteger(str);
}
उत्पादन करने के लिए
साथ शुरू होता है यह हेक्साडेसिमल के रूप में या हेक्साडेसिमल प्रतिनिधित्व में कनवर्ट करें:
System.out.printf("0x%x%n", number);
// or
String hex = String.format("0x%x", number);
स्रोत
2010-12-11 12:29:35
यह सुनिश्चित नहीं है कि दूसरा उदाहरण दिया गया है कि ओपी ने उत्पादन के लिए पूछे जाने वाले ओपी का उत्पादन क्यों किया, @ कार्लोस एकमात्र ऐसा है जो करता है। (उन्होंने बाद में पोस्ट किया) –
यह नकारात्मक मानों पर भी विचार नहीं करता – TheRealNeo
@TheRealNeo क्या आप नकारात्मक हेक्साडेसिमल मान का उदाहरण दे सकते हैं? –