我正在开发一个解析xml文件的项目,我遇到了SAXParserFactory和DocumentBuilderFactory的问题。对于他们两个当我尝试调用newInstance()函数时,eclipse red强调它并且说" SAXParserFactory.newInstance无法解析为类型。"我不确定为什么会这样,也许我错过了一些完全明显的东西。无论如何,这是相关的代码:
Feed.java
package xmlpac;
import java.net.*;
import java.nio.charset.MalformedInputException;
import java.util.ArrayList;
import java.io.*;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class Feed {
String urlString;
ArrayList<NewsCard> newscards;
public Feed(String urlString) {
this.urlString = urlString;
}
public void FileReader() throws MalformedInputException, IOException{
ArrayList<NewsCard> gettingCards = new ArrayList<>();
URL url = new URL(urlString);
BufferedReader stream = new BufferedReader(new InputStreamReader(url.openStream()));
SAXParserFactory factory = new SAXParserFactory.newInstance();
}
我已经尝试过清理构建eclipse,重新启动并在其他IDE中尝试它,但是它们都有相同的错误,这使我相信代码或导入中可能存在错误。
提前感谢您的帮助!
答案 0 :(得分:2)
我认为你有一个错字:
SAXParserFactory factory = new SAXParserFactory.newInstance();
应该是:
SAXParserFactory factory = SAXParserFactory.newInstance();
你正试图对SAXParserFactory.newInstance()的结果做一个“新”;