簡體   English   中英

使用HtmlCleaner和AsyncTask清理HTML

[英]Cleaning HTML with HtmlCleaner and AsyncTask

我正在嘗試獲取清理的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;
    }
}

如果在主UI上執行該應用程序崩潰,則必須使用AsyncTask。

現在這就是我要執行的方式:

cleanHtml.execute();

但是,這不起作用。 它強調了“ cleanHtml.execute();”。 並說:

無法從類型AsyncTask靜態引用非靜態方法execute(Void ...)

知道如何立即運行此AsyncTask嗎? 我什至做對了嗎? 另外,一旦我開始工作,在哪里可以看到輸出cleaned.xml文件? 由於我沒有設置任何“輸出文件夾”。

采用

new cleanHtml.execute();

代替

cleanHtml.execute();

用於執行AsyncTask因為execute()不是AsyncTask類的靜態方法,因此您將需要創建類的實例以調用execute()方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM