java如何读取xml文件

java如何读取xml文件,第1张

xml解析还是用dom4j方便,

import java.util.List

import org.dom4j.Document

import org.dom4j.DocumentException

import org.dom4j.Element

import org.dom4j.io.SAXReader

public class XMLPaser {

public static void main(String[] args) {

paserXML()

}

public static void paserXML(){

SAXReader reader = new SAXReader()

try {

// 读取XML文件

Document doc = reader.read("NewFile.xml")

Element root = doc.getRootElement()

System.out.println(root.getName())

List<Element> param = root.elements()

for (Element element : param) {

if(element.attributeValue("name").equals("a")){

System.out.println(element.getText())

}

}

} catch (DocumentException e) {

e.printStackTrace()

}

}

}

package com.atom.util

import java.io.File

import java.util.ArrayList

import java.util.HashMap

import java.util.List

import java.util.Map

import org.dom4j.Document

import org.dom4j.DocumentException

import org.dom4j.Element

import org.dom4j.io.SAXReader

import com.atom.basic.columntree.ColumnTree

import com.atom.biz.base.calendar.bean.CalenderNode

import com.atom.biz.base.setup.BaseSetupNode

/**

* <p>

* *** 作xml文件类

* </p>

* xml 文件格式为

*

* <tables><table><col name="" value="" /><col name="" value="" /></table><table></table></tables>

*

* @author KHT * @version $Id: XmlUtil.java,v 0.1 2009-2-22 下午10:49:02 */

public class XmlUtil {

/**

* <p>

* 读取数据的xml文件

* </p>

*

* @author Jack Zhou

* @version $Id: XmlUtil.java, */

@SuppressWarnings("unchecked")

public static List<BaseSetupNode>readBaseNodes(String path) {

List<BaseSetupNode>list = new ArrayList<BaseSetupNode>()

SAXReader reader = new SAXReader()

Document doc = null

String leaf = ""

try {

// 读取文件

File in = new File(path)

doc = reader.read(in)

Element root = doc.getRootElement()

List<Element>eles = root.elements("nodes")

List<Element>cols = null

for (Element ele : eles) {

cols = ele.elements()

for (Element element : cols) {

BaseSetupNode node = new BaseSetupNode()

node.setFz(element.attributeValue("fz"))

node.setMc(element.attributeValue("mc"))

node.setSm(element.attributeValue("sm"))

leaf = element.attributeValue("leaf")

node.setUiProvider("col")

node.setId(element.attributeValue("id"))

node.setParentId(element.attributeValue("parantid"))

node.setHref(element.attributeValue("href"))

if ("".equals(leaf) || "0".equals(leaf)) {

node.setLeaf(false)

node.setIconCls("task")

} else {

node.setLeaf(true)

node.setIconCls("task-folder")

}

list.add(node)

}

}

} catch (DocumentException e) {

e.printStackTrace()

}

return list

}

public static List<CalenderNode>readCalenderNodes(String path) {

List<CalenderNode>list = new ArrayList<CalenderNode>()

SAXReader reader = new SAXReader()

Document doc = null

String leaf = ""

try {

// 读取文件

File in = new File(path)

doc = reader.read(in)

Element root = doc.getRootElement()

List<Element>eles = root.elements("nodes")

List<Element>cols = null

String isv = ""

for (Element ele : eles) {

cols = ele.elements()

for (Element element : cols) {

CalenderNode node = new CalenderNode()

node.setDateType(element.attributeValue("dateType"))

node.setDateName(element.attributeValue("dateName"))

node.setDate(element.attributeValue("date"))

node.setMemo(element.attributeValue("memo"))

isv = element.attributeValue("visible")

if (!StringUtil.isEmpty(isv))

node

.setVisible("<img src='/public/images/Checkmark4.gif' />")

else

node.setVisible("-")

leaf = element.attributeValue("leaf")

node.setUiProvider("col")

node.setId(element.attributeValue("id"))

node.setParentId(element.attributeValue("parantid"))

node.setHref(element.attributeValue("href"))

if ("".equals(leaf) || "0".equals(leaf)) {

node.setLeaf(false)

node.setIconCls("task")

} else {

node.setLeaf(true)

node.setIconCls("task-folder")

}

list.add(node)

}

}

} catch (DocumentException e) {

e.printStackTrace()

}

return list

}

@SuppressWarnings("unchecked")

public List<Map<String, String>>readMapTest() {

List<Map<String, String>>list = new ArrayList<Map<String, String>>()

String path = this.getClass().getResource("/").getPath()

+ "/xml/test.xml"

SAXReader reader = new SAXReader()

Document doc = null

try {

// 读取文件

File in = new File(path)

doc = reader.read(in)

Element root = doc.getRootElement()

List<Element>eles = root.elements("nodes")

List<Element>cols = null

for (Element ele : eles) {

cols = ele.elements()

for (Element element : cols) {

Map<String, String>map = new HashMap<String, String>()

map.put("childrows", element.attributeValue("childrows"))

map.put("hc0", element.attributeValue("hc0"))

map.put("hc1", element.attributeValue("hc1"))

map.put("hc2", element.attributeValue("hc2"))

map.put("hc3", element.attributeValue("hc3"))

map.put("hasnote", element.attributeValue("hasnote"))

map.put("urid", element.attributeValue("urid"))

map.put("entityid", element.attributeValue("entityid"))

map.put("bankid", element.attributeValue("bankid"))

list.add(map)

}

}

} catch (DocumentException e) {

e.printStackTrace()

}

return list

}

public static void main(String[] args) {

XmlUtil xml = new XmlUtil()

String path = xml.getClass().getResource("/").getPath()

List<BaseSetupNode>nodes = XmlUtil.readBaseNodes(path

+ "/xml/base.xml")

ColumnTree t = new ColumnTree()

System.out.println(t.getJsonString(nodes))

// System.out.println(nodes.size())

// System.out.println(path)

}

}

import java.io.BufferedWriter

import java.io.File

import java.io.FileWriter

import java.io.IOException

import javax.xml.parsers.DocumentBuilder

import javax.xml.parsers.DocumentBuilderFactory

import javax.xml.parsers.ParserConfigurationException

import javax.xml.transform.Transformer

import javax.xml.transform.TransformerConfigurationException

import javax.xml.transform.TransformerException

import javax.xml.transform.TransformerFactory

import javax.xml.transform.dom.DOMSource

import javax.xml.transform.stream.StreamResult

import org.w3c.dom.Element

import org.w3c.dom.Node

import org.w3c.dom.NodeList

//import org.jdom2.Document

import org.xml.sax.SAXException

public class tt {

    public static void  main (String [] arg) {

        DocumentBuilderFactory dFactory =DocumentBuilderFactory.newInstance()

        DocumentBuilder dBuilder =  null

        try {

            dBuilder = dFactory.newDocumentBuilder()

        } catch (ParserConfigurationException e) {

            // TODO Auto-generated catch block

            e.printStackTrace()

        }

        org.w3c.dom.Document document = null  

        try {

     document = dBuilder.parse("E:/workspace/XMLTest/src/tt.xml")

        } catch (SAXException e) {

            // TODO Auto-generated catch block

            e.printStackTrace()

        } catch (IOException e) {

            // TODO Auto-generated catch block

            e.printStackTrace()

        }

        Element root=  document.getDocumentElement()

        NodeList nList = root.getChildNodes()

        System.out.println(nList.getLength()+root.getNodeName())

                        

        //for(int i=0 i<nList.getLength() i++){

            System.out.println(nList.item(1).getChildNodes().item(1).getTextContent()+ "hahah")

        //}

            NodeList nodeList =document.getElementsByTagName("StepDescription")

            nodeList.item(0).getChildNodes().item(1).getAttributes().item(0).setNodeValue("ranqi")

            System.out.println(nodeList.item(0).getChildNodes().item(1).getAttributes().item(0).getNodeValue()+ "7777")

        DOMSource source = new DOMSource(document)

        StreamResult sResult = new StreamResult(new File("E:/workspace/XMLTest/src/tt_11.xml"))

        TransformerFactory tFactory =TransformerFactory.newInstance()

        Transformer transformer =null

        try {

            transformer =tFactory.newTransformer()

                                

                try {

                    transformer.transform(source, sResult)

                } catch (TransformerException e) {

                    // TODO Auto-generated catch block

                    e.printStackTrace()

                }

                                

        } catch (TransformerConfigurationException e) {

            // TODO Auto-generated catch block

            e.printStackTrace()

        }

                            

    }

}

这还是我读E:/workspace/XMLTest/src/tt.xml这个路径下的xml文档


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12098416.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存