「java获取节点」js 获取节点
本篇文章给大家谈谈java获取节点,以及js 获取节点对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java获取xml节点属性
- 2、java中dom4j解析xml文件怎么获取节点属性
- 3、Java Swing JTree怎么获取选中节点值
- 4、java怎么通过xml节点的属性获取这个节点的值?
- 5、java中dom4j解析xml文件怎么获取节点属性最好有代码
- 6、java语句如何获取XML文件的节点值
java获取xml节点属性
/**
* xml文件解析
* @author young
*
*/
import java.io.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class XmlExam {
public static void main(String args[]) {
Element element = null;
// 可以使用绝对路劲
File f = new File("xml1.xml");
// documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)
DocumentBuilder db = null;
DocumentBuilderFactory dbf = null;
try {
// 返回documentBuilderFactory对象
dbf = DocumentBuilderFactory.newInstance();
// 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象
db = dbf.newDocumentBuilder();
// 得到一个DOM并返回给document对象
Document dt = db.parse(f);
// 得到一个elment根元素
element = dt.getDocumentElement();
// 获得根节点
System.out.println("根元素:" + element.getNodeName());
// 获得根元素下的子节点
NodeList childNodes = element.getChildNodes();
// 遍历这些子节点
for (int i = 0; i childNodes.getLength(); i++) {
// 获得每个对应位置i的结点
Node node1 = childNodes.item(i);
if ("txtbook".equals(node1.getNodeName())) {
System.out.println("\r\n找到一个子节点: "
+ node1.getNodeName() + ". ");
// 获得txtbook下的节点
NodeList nodeDetail = node1.getChildNodes();
// 遍历txtbook下的节点
for (int j = 0; j nodeDetail.getLength(); j++) {
// 获得wuxialist元素每一个节点
Node detail = nodeDetail.item(j);
if ("name".equals(detail.getNodeName())) // 输出code
System.out
.println("name= " + detail.getTextContent());
else if ("author".equals(detail.getNodeName())) // 输出pass
System.out
.println("author= " + detail.getTextContent());
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
这就是用java来解析xml文件。 要在java代码中导入xml解析的jar包。
4个jar包为:commons-beanutils.jar
commons-collections.jar
commons-digester.jar
commons-logging.jar
dom4j-1.6.1.jar
输出结果为:
java中dom4j解析xml文件怎么获取节点属性
java读取xml节点元素,主要使用java提供的解析xml的工具类SAXParserFactory,如下代码:package xml.xmlreader;import java.io.File;import java.net.URL;import java.util.Properties;import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory;public class CFGParser {//解析xml文件的工具类 private Properties props; public Properties getProps() { return props; } public void setProps(Properties props) { this.props = props; } public void parse(String filename) throws Exception { CFGHandler handler = new CFGHandler(); SAXParserFactory factory = SAXParserFactory.newInstance(); factory.setNamespaceAware(false); factory.setValidating(false); SAXParser parser = factory.newSAXParser(); URL confURL = super.getClass().getClassLoader().getResource(filename); if (confURL == null) { System.out.println("Can't find configration file."); return; } try { parser.parse(confURL.toString(), handler); this.props = handler.getProps(); } finally { factory = null; parser = null; handler = null; } } public void parseFile(String filename) throws Exception { CFGHandler handler = new CFGHandler(); SAXParserFactory factory = SAXParserFactory.newInstance(); factory.setNamespaceAware(false); factory.setValidating(false); SAXParser parser = factory.newSAXParser(); File f = new File(filename); if ((f == null) || (!f.exists())) return; try { parser.parse(f, handler); this.props = handler.getProps(); } finally { factory = null; parser = null; handler = null; } }}package xml.xmlreader;import java.util.Properties;import org.xml.sax.Attributes;import org.xml.sax.SAXException;import org.xml.sax.helpers.DefaultHandler;public class CFGHandler extends DefaultHandler{ private Properties props; private String currentSet; private String currentName; private StringBuffer currentValue = new StringBuffer(); public CFGHandler() { this.props = new Properties(); } public Properties getProps() { return this.props; } public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { this.currentValue.delete(0, this.currentValue.length()); this.currentName = qName; } public void characters(char[] ch, int start, int length) throws SAXException { this.currentValue.append(ch, start, length); } public void endElement(String uri, String localName, String qName) throws SAXException { this.props.put(qName.toLowerCase(), this.currentValue.toString().trim()); }}xml文件 6 10 23:00 12:00 18:00jsp获取各个节点的值:
Java Swing JTree怎么获取选中节点值
首先用Eclipse设置好界面
2
设计出来的运行界面如下图:
3
当选中树中的某个节点时,节点值设置到了文本框中, 实现效果如下:
4
主要功能代码如下:
END
全部功能代码
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTree;import javax.swing.border.EmptyBorder;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
public class AppDemo extends JFrame {
private JPanel contentPane;
private JTextField textField;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
AppDemo frame = new AppDemo();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public AppDemo() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
setTitle("测试");
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(30, 20, 196, 217);
contentPane.add(scrollPane);
final JTree tree = new JTree();
scrollPane.setViewportView(tree); textField = new JTextField();
textField.setBounds(252, 35, 172, 27);
contentPane.add(textField);
tree.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode note = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
String name = note.toString();//获得这个结点的名称
textField.setText(name);
}
});
}
}
java怎么通过xml节点的属性获取这个节点的值?
创建解析器
SAXReader saxreader = new SAXReader();
读取文档
Document doc = saxreader.read(new File("url"));
获取根
Element root = doc.getRootElement();
获取子节点
ListElement list = root.elements();
System.out.println(e.elementText("name"));
System.out.println(e.element("score").attributeValue("java"));
Reader reader = new InputStreamReader(con
.getInputStream());
SAXReader sax = new SAXReader();
// sax.setEncoding("GBK");
Document document = sax.read(reader);
document.setXMLEncoding("GBK");
Element root = document.getRootElement();
// Document doc = reader.read(read);
// Element root = doc.getRootElement();
readNode(root, "");
public static void readNode(Element root, String prefix) {
if (root == null) return;
// 获取属性
ListAttribute attrs = root.attributes();
if (attrs != null attrs.size() 0) {
System.err.print(prefix);
for (Attribute attr : attrs) {
System.err.print(attr.getValue() + " ");
}
System.err.println();
}
// 获取他的子节点
ListElement childNodes = root.elements();
prefix += "\t";
for (Element e : childNodes) {
//输出内容
System.err.println(e.getName()+":"+e.getData());
readNode(e, prefix);
}
}
java中dom4j解析xml文件怎么获取节点属性最好有代码
dom4j中,使用Element.attributes方法可以获取到节点的属性,而使用elements则可以获取相应的子节点
比如:
Element root = doc.getRootElement();
List attrList = root.attributes();
for (int i = 0; i attrList.size(); i++) {
//属性的取得
Attribute item = (Attribute)attrList.get(i);
System.out.println(item.getName() + "=" + item.getValue());
}
List childList = root.elements();
for (int i = 0; i childList.size(); i++) {
//子节点的操作
Element it = (Element) childList.get(i);
//对子节点进行其它操作...
}
java语句如何获取XML文件的节点值
你说的是获取指定id下面的节点的属性值吧!
程序如下,其中equal(“”)双引号中的值为节点的属性值
属性值获取如下:
package saxbuilder.ibm.xmlproperty;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
public class XmlProperty {
public Element element;
String path = "D:\\xml\\a.xml";
public void getElementProperty() {
File file = new File(path);
try {
SAXReader reader = new SAXReader();
Document dc = reader.read(file);
Element e = dc.getRootElement();
// 节点值
Element child = (Element) e.getQName("COMMAND");
System.out.println(child.toString());
// 一级节点
for (Iterator iterator = e.elementIterator(); iterator.hasNext();) {
Element el = (Element) iterator.next();
// 一级节点的属性信息
for (Iterator iterator2 = el.attributeIterator(); iterator2
.hasNext();) {
Attribute attribute = (Attribute) iterator2.next();
if(attribute.getName().equals("bodyCategory")){
System.out.println("attribute.getName()一级节点的属性信息+"+attribute.getName()+attribute.getValue());
}else{
System.out.println("attribute.getName()一级节点的属性信息+"+attribute.getName()+attribute.getValue());
}
// 二级节点
for (Iterator iterator3 = el.elementIterator(); iterator3
.hasNext();) {
Element ele = (Element) iterator3.next();
// 二级节点的属性信息
for (Iterator iterator4 = ele.attributeIterator(); iterator4
.hasNext();) {
Attribute attribute1 = (Attribute) iterator4.next();
if(attribute1.getName().equals("cmdType")){
System.out.println("attribute1.getName()二级节点的属性信息+"+attribute1.getName()+"+"+attribute1.getValue());
}else{
System.out.println("attribute1.getName()二级节点的属性信息+"+attribute1.getName()+"+"+attribute1.getValue());
}
}
}
}
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
java获取节点的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于js 获取节点、java获取节点的信息别忘了在本站进行查找喔。