【问题标题】:Error while coding for java xml parser为 java xml 解析器编码时出错
【发布时间】:2012-10-21 08:56:28
【问题描述】:

我在下面有编码:

            try{                                
            address = "http://isbndb.com//api/books.xml? 
            access_key=CKEHIG4D&index1=isbn&value1=" +barcode;
            URL url = new URL(address);
            URLConnection conn = url.openConnection();

            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder = factory.newDocumentBuilder();
            Document doc = builder.parse(conn.getInputStream());

            NodeList nodes = doc.getElementsByTagName("BookData");
            for (int i = 0; i < nodes.getLength(); i++) {
                Element element = (Element) nodes.item(i);
                NodeList title = element.getElementsByTagName("LongTitle");
                Element line = (Element) title.item(0);
                titleList.add(line.getTextContent());
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }

XML 格式是

http://isbndb.com//api/books.xml?access_key=CKEHIG4D&index1=isbn&value1=1593270615

错误是这一行 --> NodeList title = element.getElementsByTagName("LongTitle");

这到底是怎么回事?

【问题讨论】:

  • 元素类型的getElementsByTagName(String)方法未定义
  • NodeList title = element.getElementsByTagName("TitleLong");
  • 更改 "LongTitle" --> "TitleLong"
  • 改变了...但还是同样的错误

标签: java android xml-parsing


【解决方案1】:

确保您正在导入正确的 Element 类 (org.w3c.dom.Element)。

【讨论】:

    【解决方案2】:

    更改“LongTitle”-->“TitleLong”

    NodeList title = element.getElementsByTagName("LongTitle");
    

    【讨论】:

    • NodeList 节点 = doc.getElementsByTagName("BookData");这已经声明了……我说的对吗?
    • 不是,问题行中的节点列表
    • 还是跑不了~同样的错误
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-07
    • 2012-12-25
    • 1970-01-01
    • 2013-08-04
    • 2015-05-23
    • 1970-01-01
    • 2011-02-09
    相关资源
    最近更新 更多