【发布时间】:2010-05-14 16:11:05
【问题描述】:
我想使用 System.Net.IPAddress.TryParse 来验证 IPv6 地址,因为我不想编写自己的 reg exp :-)
但是,这似乎允许诸如“(validIPv6)](anythingatallhere)”之类的字符串 - 例如,“1234::5678:abcd]whargarbl”。
这些是否有效,或者这是一个错误?
由于我实际上只想要“[(validIPv6)]:(portnumber)”形式的字符串,因此我必须自己进行一些验证。
【问题讨论】:
-
System.Net.IPAddress.Parse("1234::5678:abcd]whargarbl") 对我来说失败了。请记住,当使用 try parse 时,它不会抛出 except 而是将 out 参数保留为默认值
-
什么版本的 Windows?
-
used2could:该字符串为我传递 - TryParse 返回 True,并且 IPAddress 具有例如AddressFamily 设置为 InterNetworkV6 和 ToString() 值“1234:0000:0000:0000:0000:0000:86.120.171.205”。 SLaks - 这是 XP,我猜它实际上并不支持 IPv6。
标签: visual-studio-2005 c#-2.0 tryparse