我正在尝试在c#console中执行像sociall.net这样的搜索应用程序。
我的目的是,我将从用户那里获得姓名,我的申请将在Google上搜索此姓名。
我试过这段代码:
Console.WriteLine("What's your name?.");
string name;
name = Console.ReadLine();
string surname;
Console.WriteLine("What's your surname?");
surname = Console.ReadLine();
string site;
site = "Http://google.com=q'name'+'surname'";
WebRequest talep = HttpWebRequest.Create(site);
WebResponse cevap = talep.GetResponse();
StreamReader oku = new StreamReader(cevap.GetResponseStream());
string Kodlar = oku.ReadToEnd();
int baslangic = Kodlar.IndexOf("<p>") + 4;
int bitis = Kodlar.Substring(baslangic).IndexOf("</p>");
Console.WriteLine(Kodlar.Substring(baslangic, bitis));
Console.Read();
但我收到一条错误信息:
An unhandled exception of type 'System.UriFormatException' occurred in System.dll
我能为自己的梦想做些什么? :)
答案 0 :(得分:1)
我相信它试图告诉您的是您的网址无效。
您在控制台中捕获姓名和姓氏看起来是正确的,但在构建网址时不会评估变量。
我认为不是:
site = "Http://google.com=q'name'+'surname'";
你应该尝试:
site = String.Format("https://www.google.com/?q={0}+{1}", name, surname);
以下内容也应该有效:
site = String.Format("https://www.google.com/#q={0}+{1}", name, surname);
String.Format是将变量值插入字符串的有用方法。 当然,如果您不想使用它,您也可以使用基本表格,如下所示:
site = "https://www.google.com/#q=" + name + "+" + surname;