用Java读取xml文件内容

 

 在AXP中,DOM解析器是1 Document Builder类的一个实例,该实例由 Documen
Bailderfactorv类负责创,步如下 
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();//实例化一个DocumentBuildFactor对象
        DocumentBuilder builder = null;
        try {
            builder = factory.newDocumentBuilder();//返回一个DocumentBuilder对象,称为DOM解析器
        } catch (ParserConfigurationException e) {
            
            e.printStackTrace();
        }
        File f = new File("D:\\jsp\\db\\book3.xml");//要解析的xml文件路径

        Document document = null;

        try {
            document = builder.parse(f);返回一个实现了Document接口的实例
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
接下去是获取里面的内容
    Element root = document.getDocumentElement();// 获取根节点
        NodeList childNodes = root.getChildNodes();// 获取根节点下的所有子节点,返回一个NodeList对象
        for (int i = 0; i < childNodes.getLength(); i++) {
            Node mysql = childNodes.item(i);
            if ("mysql".equals(mysql.getNodeName())) { // 判断该节点名称
                NodeList nodeDetail = mysql.getChildNodes();// 获取该节点的所有子节点,返回一个NodeList对象
                for (int j = 0; j < nodeDetail.getLength(); j++) {// 遍历该节点list
                    Node detail = nodeDetail.item(j);
                    if (("driver").equals(detail.getNodeName()))
                        mydriver = detail.getTextContent();// 将该节点的text赋值给mydriver(mydriver是自己定义的一个String变量)
                    if (("server").equals(detail.getNodeName()))
                        myservice = detail.getTextContent();
                    if (("username").equals(detail.getNodeName()))
                        myusername = detail.getTextContent();
                    if (("password").equals(detail.getNodeName()))
                        mypassword = detail.getTextContent();

                }

            }
            
        }

最后附上我的xml文件结构

 

posted @ 2018-05-30 20:05  fwyc  阅读(363)  评论(0编辑  收藏  举报