2011-08-05 204 views
0

我有一個IPv6地址字符串的縮寫形式:2001:1:0:0:10:0:10:10代表IPv6地址

我要代表它作爲IPV6字符串的縮寫形式:2001: 1 :: 10:0:10:10

有沒有人知道java的方法來做到這一點?

這是非常迫切的!立即幫助表示讚賞!

感謝

+2

提示:「這非常緊迫」不會在這裏贏得任何好處 – Flexo

+1

我會去拿咖啡,谷歌回答問題並考慮發佈解決方案。給我4個小時。 :p –

+0

這裏有一個很好的Java特定答案:http://stackoverflow.com/questions/7043983/ipv6-address-into-compressed-form-in-java/7044170#7044170 – Beau

回答

0

因爲它可以在某些情況下,許多不同的方式來縮短,有可能是在Java API沒有這樣的功能。您可以手動執行:

Inet6Address.getByName("1080::8:800:200C:417A").replaceFirst("(:0)+:", "::"); 

但我沒有對它進行非常好的測試。可能有些情況下這個代碼是錯誤的。