0

我正在处理一些额外的信用项目,当我尝试通过我的程序的自动检查服务器提交它时,它给了我一个 Symbol Not found 错误并停止运行我的代码......我不完全确定为什么,因为一切似乎都在范围内并且拼写正确。

有任何想法吗?

public class Chap72 {    
    public static void main(String[] args) throws IOException {

        //User inputs url and name of file to create.
        WebReader instance = new WebReader();

        Scanner console = new Scanner(System.in);
        System.out.println("Enter a URL");
        String url = console.nextLine();
        System.out.println("Enter name of file");
        Scanner location = new Scanner(System.in);
        String fileName = location.next();
        String filename = "PARSEDRESULT.txt";

        try {
            //uses both saveURL for the unaltered HTML
            //uses SaveToURLPage for extracting links.
            instance.SaveToURLPage(url, filename);
            instance.saveURL(instance.Navigate(url), fileName);


        } 
        catch (MalformedURLException e) {
            //catches MalformedURLException
            e.printStackTrace();
        }
    }
}

错误:

error: cannot find symbol
instance.SaveToURLPage(url, filename);
        ^
symbol:   method SaveToURLPage(String,String)
location: variable instance of type Chap72
1 error

我不完全确定为什么会收到此错误...

WebReader

public class WebReader implements WebPage {

/**
 *
 * @param url to search through
 * @return pageLocation
 * @throws MalformedURLException
 */
public URL Navigate(String url) throws MalformedURLException {
    //Creates a URL object
    URL pageLocation = new URL(url);
    return pageLocation;
}

/**
 *
 * @param location url hypertext link
 * @param fileName name of text file to save to
 * @throws IOException
 */
public void saveURL(URL location, String fileName) throws IOException {
    Scanner in = new Scanner(location.openStream());
    PrintWriter out = new PrintWriter(fileName);
    //Scans the website
    while (in.hasNextLine()) {
        //prints out Information from URL
        out.println(in.nextLine());

    }
    in.close();
    out.close();
}

/**
 *
 * @param url to search through
 * @param filename to save to
 * @throws IOException
 */
public void SaveToURLPage(String url, String fileName) throws IOException {

    // Creates a new URL object to retreive information.
    URL pageLocation = new URL(url);
    Scanner in = new Scanner(pageLocation.openStream());
    PrintWriter out = new PrintWriter(fileName);

    while (in.hasNext()) {
        //Cycles through each character
        String line = in.next();
        if (line.contains("href=\"http://")) {
            //if it has an <a> tag, the link is extracted
            int from = line.indexOf("\"");
            int to = line.lastIndexOf("\"");
            out.println(line.substring(from + 1, to));
        }
    }
    in.close(); //closes program
    out.close();
}

}

4

1 回答 1

3

这个错误意味着没有这样的方法SaveToURLPage可以接受两个String对象作为WebReader类中声明的参数。如需任何进一步的帮助,您需要发布WebReader课程的内容(或 JavaDoc),以供我们查看。

于 2013-10-09T03:43:47.540 回答