需要帮助解析Twitter Oauth的XML文件

时间:2014-08-05 20:06:49

标签: java xml parsing

我写了一个推特桌面应用,基本上只是让我发布推文和图片......没什么特别的。

我已经完成了所有工作,但最后一部分是持久化配置文件(这是我的应用程序生成的以下XML。

<?xml version="1.0" encoding="UTF-8" standalone="no"?><Twitterer><config id="1"><accessToken>ENDLESS-STRING-OF-CHARACTERS</accessToken><accessTokenSecret>ANOTHER-ENDLESS-STRING-OF-CHARACTERS</accessTokenSecret></config></Twitterer>

我需要做的就是设置accessToken&amp; amp; accessTokenSecret变量。文件名是config.xml。

我一直在网上看很多例子,但似乎无法解决只从文件中获取两个值的问题,这不应该是一个循环。

就我最后一段拼图而言,这就是我所知道的:

try {
        File fXmlFile = new File(this.getFileName());
        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(fXmlFile);
        doc.getDocumentElement().normalize();

        NodeList nList = doc.getElementsByTagName("config");
        int numberOfConfigs = nList.getLength();

        // GET THE TWO VARIABLES HERE

    } catch (Exception e) {

    }

如果有人可以帮助我将这两个标签读入相应的变量,我将非常感激。之后我可以处理剩余的授权。

1 个答案:

答案 0 :(得分:2)

  

我需要做的就是设置accessToken&amp; amp; accessTokenSecret变量

使用getElementsByTagName()方法的简单代码

Element root = doc.getDocumentElement();   
root.getElementsByTagName("accessToken").item(0).getTextContent()
root.getElementsByTagName("accessTokenSecret").item(0).getTextContent()

输出:

ENDLESS-STRING-OF-CHARACTERS
ANOTHER-ENDLESS-STRING-OF-CHARACTERS

或尝试config标记

的子节点
Element root = doc.getDocumentElement();
NodeList configNodeList = root.getElementsByTagName("config");
NodeList nodeList = ((Node) configNodeList.item(0)).getChildNodes();
System.out.println(nodeList.item(0).getTextContent());
System.out.println(nodeList.item(1).getTextContent());
相关问题