无效的URI:URI方案无效

4
我正在尝试通过HttpWebRequest建立连接。我从文本文件中读取url链接。但是,出现了“System.UriFormatException”错误。
我尝试在我的文本文件中在url链接前面添加http://,但结果仍然相同。
有什么解决办法吗?

你能给我们提供一个示例网址吗? - Jim Mischel
当然,问题是如果我将文本文件中的URL复制到字符串变量中,然后尝试进行Web请求连接,它就可以工作。例如:http://appworld.blackberry.com/webstore/content/43524 - Val Nolav
2个回答

10

如果错误只在从文件中读取值时发生,而直接分配给 string 变量时则没有出现该错误,那么我猜测可能存在额外的字符被读取(引号、转义字符、回车/换行符等)。

尝试将第一个值读入一个 string,然后将其与显式 string 值所期望的进行比较。任何差异在此之后应该是明显的。


非常感谢你,Daniel。你是对的,我将StreamReader.ReadLine()分配给一个带有Trim()的字符串,它起作用了。 - Val Nolav
@Val 没问题。不要忘记标记哪些帖子回答了你的问题(对其他读者来说)。 :-) - Daniel Becroft

1

没有看到代码就不可能知道你试图做什么。但是你可以从 UriFormatException 类的Message属性开始查看。Message是一个解释异常原因的字符串。


这是我得到错误的代码行: HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(url); url 是从文本文件中读取的字符串。文本文件每行包含一个 URL 链接。 例如,一个URL是: http://appworld.blackberry.com//webstore/content/22443 - Val Nolav
读取文件后,确保从“url”中删除尾随的换行符。查看UriFormatException类的“Message”属性以获取有关异常的更多信息-否则我们只能猜测可能出了什么问题。 - Anson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接