Java 使用HtmlCleaner和AsyncTask清理HTML

Java 使用HtmlCleaner和AsyncTask清理HTML,java,android,android-asynctask,htmlcleaner,Java,Android,Android Asynctask,Htmlcleaner,我正在尝试获取一个清理过的XML文件,以便能够解析数据。这是我的尝试: private class cleanHtml extends AsyncTask<Void, Void, Void>{ @Override protected Void doInBackground(Void... arg0) { try { HtmlCleaner cleaner = new HtmlCleaner(); Str

我正在尝试获取一个清理过的XML文件,以便能够解析数据。这是我的尝试:

private class cleanHtml extends AsyncTask<Void, Void, Void>{

    @Override
    protected Void doInBackground(Void... arg0) {
        try {
            HtmlCleaner cleaner = new HtmlCleaner();
            String url = "https://www.easistent.com/urniki/263/razredi/16515";
            TagNode node = cleaner.clean(new URL(url));
            CleanerProperties props = cleaner.getProperties();
            new PrettyXmlSerializer(props).writeToFile(node, "cleaned.xml", "utf-8");
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
    }
}
然而,这不起作用。它在“cleanHtml.execute();”下面加下划线,并表示:

无法从类型AsyncTask对非静态方法execute(Void…)进行静态引用

知道我现在如何运行这个任务吗?我做得对吗?另外,一旦我开始工作,我在哪里可以看到cleaned.xml文件的输出?因为我没有设置任何“输出文件夹”。

使用

new cleanHtml.execute();
而不是

cleanHtml.execute();
用于执行
AsyncTask
,因为execute()不是
AsyncTask
类的静态方法,所以需要创建类的实例来调用
execute()
方法

cleanHtml.execute();