为什么这是var uri = new Uri("ftp://1111:2222:3333::43/testing/1kb.zip");
抛出此异常?
System.UriFormatException:无效的URI:指定的端口无效。在System.Uri.CreateThis(String uri,Boolean dontEscape,UriKind uriKind)
答案 0 :(得分:10)
来自RFC 2732:
要在URL中使用文字IPv6地址,文字地址应为 用“[”和“]”字符括起来。
例如,这很好用:
var uri = new Uri("ftp://[1111:2222:3333::43]/testing/1kb.zip");
如果要指定端口,则需要在方括号外:
var uri = new Uri("ftp://[1111:2222:3333::43]:100/testing/1kb.zip");