【问题标题】:Convert XML String to ArrayList将 XML 字符串转换为 ArrayList
【发布时间】:2012-08-06 17:29:23
【问题描述】:

似乎是一个基本问题,但我在任何地方都找不到。基本上我有一个 XML 链接列表,如下所示:(全部在一个字符串中)

我已经有了包含所有 XML 的“字符串”变量。只是提取 HTML 字符串。

<?xml version="1.0" encoding="UTF-8"?>
<fql_query_response xmlns="http://api.facebook.com/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" list="true">
<photo>
    <src_small>http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/486603_10151153207000351_1200565882_t.jpg</src_small>
</photo>
<photo>
  <src_small>http://photos-c.ak.fbcdn.net/hphotos-ak-ash3/578919_10150988289678715_1110488833_t.jpg</src_small>
</photo>

我想把它们转换成一个数组列表,所以像 URLArray[0] 这样的东西将是第一个地址作为字符串。

谁能告诉我该怎么做谢谢?

【问题讨论】:

标签: java android xml arrays string


【解决方案1】:
  DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  DocumentBuilder builder = factory.newDocumentBuilder();
  InputSource is = new InputSource( new StringReader( xmlString) );
  Document doc = builder.parse( is );

  XPathFactory factory = XPathFactory.newInstance();
  XPath xpath = factory.newXPath();
  xpath.setNamespaceContext(new PersonalNamespaceContext());
  XPathExpression expr = xpath.compile("//src_small/text()");

  Object result = expr.evaluate(doc, XPathConstants.NODESET);
  NodeList nodes = (NodeList) result;
  List<String> urls = new ArrayList<String>();
  for (int i = 0; i < nodes.getLength(); i++) {
      urls.add (nodes.item(i).getNodeValue());
      System.out.println(nodes.item(i).getNodeValue()); 
  }

【讨论】:

【解决方案2】:

你是对的,应该有一些其他资源可以帮助你。也许您的搜索没有使用正确的关键字。

你基本上有两个选择:

  1. 使用 XML 处理库。 SAX、DOM、XPATH 和 xmlreader 是一些您可以用来查找的关键字。

  2. 忽略您的字符串是 xml 的事实并对其执行正常的字符串操作。拆分、遍历它、正则表达式等......

【讨论】:

    【解决方案3】:

    是的,你必须执行XML Parsing

    然后将其存储在 ArrayList 中。

    例如:

    ArrayList<String> aList = new ArrayList<String>();
    
    aList.add("your string");
    

    【讨论】:

      猜你喜欢
      • 2019-09-04
      • 2012-04-28
      • 2011-09-13
      • 2015-07-22
      • 2014-09-19
      • 2014-05-16
      • 1970-01-01
      • 1970-01-01
      • 2018-08-29
      相关资源
      最近更新 更多