2010-06-06 11 views
12

मान लीजिए मैं आईपी एक स्ट्रिंग में संग्रहीत किए गए:कैसे जावा में स्ट्रिंग के रूप में एक बाइट [] एक आईपी से प्रतिनिधित्व प्राप्त करने के लिए

स्ट्रिंग आईपी = "192.168.2.1"

और मैं प्राप्त करना चाहते हैं चार चींटियों के साथ बाइट सरणी। मैं इसे कैसे कर सकता हूं? धन्यवाद!

उत्तर

37

कुछ इस तरह:

InetAddress ip = InetAddress.getByName("192.168.2.1"); 
byte[] bytes = ip.getAddress(); 
for (byte b : bytes) { 
    System.out.println(b & 0xFF); 
} 
+0

यह "सामान्य" डोमेन नामों के लिए भी अच्छी तरह से काम करना चाहिए। –

+0

ओह और बीटीडब्ल्यू 0xFF के साथ मास्किंग 127 से अधिक मूल्यों के लिए है – Inv3r53

3

प्रत्येक नंबर एक बाइट है, इसलिए आपके मामले में उचित बाइट [] {1 9 2, 168, 2, 1} होगा।

यदि आपके पास स्ट्रिंग है तो अधिक विशिष्ट होने के लिए, आपको पहले इसे "।" एस से विभाजित करना होगा और फिर प्रत्येक परिणामी स्ट्रिंग से बाइट को पार्स करना होगा।

+0

वह एक स्ट्रिंग से एक बाइट सरणी में बदलने के लिए चाहता है ... –

+0

एक बाइट कैसे आप इस सरणी में 192 रख सकते हैं 127. की एक अधिकतम मूल्य है? – eternay

+0

अप्रमाणित बाइट पूरी तरह से – UrsulRosu

संबंधित मुद्दे

 संबंधित मुद्दे