无法找到预期的}

时间:2016-06-04 04:47:14

标签: c#

我似乎无法在此处的代码段中找到放置的位置}。 简单的问题,但我无法让它发挥作用。

                foreach (string line in File.ReadLines(@"C:\\tumblrextract\\in7.txt"))         
            {
                if (line.Contains("@"))
                    {
                    searchEmail.SendKeys(line);
                    submitButton.Click();
                    var result = driver.FindElement(By.ClassName("invite_someone_success")).Text;
                    var ifThere = driver.FindElements(By.XPath("//*[@id='invite_someone']/div"));
                    if (driver.FindElements(By.XPath("//*[@id='invite_someone']/div")).Count != 0)
                    // If invite_someone_failure exists open this url
                    driver.Url = "https://www.tumblr.com/lookup";
                    Thread.Sleep(3000);
                    driver.Url = "https://www.tumblr.com/following";
                    else
                    using (StreamWriter writer = File.AppendText("C:\\tumblrextract\\out7.txt"))
                        writer.WriteLine(result + ":" + line);
                    }
                }

2 个答案:

答案 0 :(得分:5)

正确的格式化可以帮助您自己找到错误。然而,这是因为你在if (driver.Find...之后有3个语句,然后else期望在它前面有一个右括号。将条件语句包装在大括号中,它将起作用。

foreach (string line in File.ReadLines(@"C:\\tumblrextract\\in7.txt"))
{
    if (line.Contains("@"))
    {
        searchEmail.SendKeys(line);
        submitButton.Click();
        var result = driver.FindElement(By.ClassName("invite_someone_success")).Text;
        var ifThere = driver.FindElements(By.XPath("//*[@id='invite_someone']/div"));
        if (driver.FindElements(By.XPath("//*[@id='invite_someone']/div")).Count != 0)
        {
            driver.Url = "https://www.tumblr.com/lookup";
            Thread.Sleep(3000);
            driver.Url = "https://www.tumblr.com/following";
        }
        // If invite_someone_failure exists open this url
        else
        {
            using (StreamWriter writer = File.AppendText("C:\\tumblrextract\\out7.txt")) 
            {
                writer.WriteLine(result + ":" + line);
            }
        }
    }
}

答案 1 :(得分:1)

除此之外你需要}之后你需要{。您还需要打开第二个if的关闭括号。

foreach (string line in File.ReadLines(@"C:\\tumblrextract\\in7.txt"))         
            {
                if (line.Contains("@"))
                    {
                    searchEmail.SendKeys(line);
                    submitButton.Click();
                    var result = driver.FindElement(By.ClassName("invite_someone_success")).Text;
                    var ifThere = driver.FindElements(By.XPath("//*[@id='invite_someone']/div"));
                    if (driver.FindElements(By.XPath("//*[@id='invite_someone']/div")).Count != 0)
                    {
                       // If invite_someone_failure exists open this url
                       driver.Url = "https://www.tumblr.com/lookup";
                       Thread.Sleep(3000);
                       driver.Url = "https://www.tumblr.com/following";
                     }//end of second if
                    else{
                         using (StreamWriter writer =File.AppendText("C:\\tumblrextract\\out7.txt"))
                         writer.WriteLine(result + ":" + line);
                        }//end of else
                    }//end of first if
                }//end of foreach