JDOM和DOM4J都可以,楼主找找,这里读xml的例子很多的,我的是使用JDOM包的例子。package jdomdemo;import org.jdom.*;
import org.jdom.output.*;
import org.jdom.input.*;
import java.io.*;
public class TestJDOM{
public static void main(String args[])throws Exception{
SAXBuilder sb = new SAXBuilder();
//从文件构造一个Document,因为XML文件中已经指定了编码,所以这里不必了
Document doc = sb.build(new FileInputStream("exampleA.xml"));
//加入一条处理指令
ProcessingInstruction pi = new ProcessingInstruction
("xml-stylesheet","href=\"bookList.html.xsl\" type=\"text/xsl\"");
doc.addContent(pi);
Element root = doc.getRootElement(); //得到根元素
java.util.List books = root.getChildren(); //得到根元素所有子元素的集合
System.out.println(books.size());//blueiceElement book = (Element)books.get(0); //得到第一个book元素
//为第一本书添加一条属性
Attribute a = new Attribute("hot","true");
book.setAttribute(a);
Element author = book.getChild("author"); //得到指定的字元素
// System.out.println(author);
author.setText("王五"); //将作者改为王五
//或 Text t = new Text("王五");book.addContent(t);
Element price = book.getChild("price"); //得到指定的字元素
//System.out.println(price.getContent());
//System.out.println(price.getName());
System.out.println(price.getText());
//修改价格,比较郁闷的是我们必须自己转换数据类型,而这正是JAXB的优势
price.setText(Float.toString(50.0f));
String indent = " ";
boolean newLines = true;
//XMLOutputter outpp=new XMLOutputter()
XMLOutputter outp = new XMLOutputter(indent,newLines,"GBK");
//XMLOutputter outp = new XMLOutputter(indent,newLines,"GBK");
outp.output(doc, new FileOutputStream("exampleB.xml"));
}
};
import org.jdom.output.*;
import org.jdom.input.*;
import java.io.*;
public class TestJDOM{
public static void main(String args[])throws Exception{
SAXBuilder sb = new SAXBuilder();
//从文件构造一个Document,因为XML文件中已经指定了编码,所以这里不必了
Document doc = sb.build(new FileInputStream("exampleA.xml"));
//加入一条处理指令
ProcessingInstruction pi = new ProcessingInstruction
("xml-stylesheet","href=\"bookList.html.xsl\" type=\"text/xsl\"");
doc.addContent(pi);
Element root = doc.getRootElement(); //得到根元素
java.util.List books = root.getChildren(); //得到根元素所有子元素的集合
System.out.println(books.size());//blueiceElement book = (Element)books.get(0); //得到第一个book元素
//为第一本书添加一条属性
Attribute a = new Attribute("hot","true");
book.setAttribute(a);
Element author = book.getChild("author"); //得到指定的字元素
// System.out.println(author);
author.setText("王五"); //将作者改为王五
//或 Text t = new Text("王五");book.addContent(t);
Element price = book.getChild("price"); //得到指定的字元素
//System.out.println(price.getContent());
//System.out.println(price.getName());
System.out.println(price.getText());
//修改价格,比较郁闷的是我们必须自己转换数据类型,而这正是JAXB的优势
price.setText(Float.toString(50.0f));
String indent = " ";
boolean newLines = true;
//XMLOutputter outpp=new XMLOutputter()
XMLOutputter outp = new XMLOutputter(indent,newLines,"GBK");
//XMLOutputter outp = new XMLOutputter(indent,newLines,"GBK");
outp.output(doc, new FileOutputStream("exampleB.xml"));
}
};
解决方案 »
- a[i]=Integer.parseInt(args[i]);为什么要这样呢?也可以不加Integer.parseInt的?比如我在参数列表添加整数,那摩就不用加Integer.parseInt???????????????
- java初学者问一个问题
- 关于List的疑问
- 帮忙 java实现数据库传递数据时候的问题
- System.in.read读入字符串出现错误呢?
- java 操作 XML 的问题
- 初学者问题:Java的开发系统的运行模式是什么?
- #########关于String和StringBuffer,知道的人进来###########
- JInternalFrame 一打开的时候,怎样改变焦点?
- 如何将panel的背景变透明呀?怎么我找了好多资料都没有介绍
- 字符串
- 帮帮忙,这个程序有些疑问。。。。
import javax.xml.parsers.*;
import org.w3c.dom.*;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Logger.global.info("Load settings from " + config_fullpath);
Document doc = db.parse(config_fullpath);
//get DB connection string
{
NodeList nl = doc.getElementsByTagName("connectionstring");
Node conn_node = nl.item(0);
DBConnString = conn_node.getFirstChild().getNodeValue();
}
//get port number
{
NodeList nl = doc.getElementsByTagName("portnumber");
Node conn_node = nl.item(0);
port = Integer.parseInt(conn_node.getFirstChild().getNodeValue());
}
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<connectionstring>jdbc:microsoft:sqlserver://192.168.0.2:1433;user=sa;password=sa;DatabaseName=test</connectionstring>
<portnumber>1000</portnumber>
</configuration>
---------------------------------------------------------------
import java.io.*;
import java.beans.*;
public class XMLTest {
public void xmlEncode() throws Exception
{
MyInfo2 my = new MyInfo2();
my.setMIAge(25);
my.setMStrMyName("google");
my.setMStrMyAddr("china");
my.setEducation("好的了");
XMLEncoder encoder = new XMLEncoder(
new BufferedOutputStream(
new FileOutputStream("myinfo.xml")));
encoder.writeObject(my);
encoder.close();
System.out.println(my);
}
public void xmlDecode() throws Exception
{
java.beans.XMLDecoder decoder = new java.beans.XMLDecoder(
new BufferedInputStream(new FileInputStream("myinfo.xml")));
MyInfo2 my = (MyInfo2)decoder.readObject();
decoder.close();
System.out.println(my);
System.out.println(my.getMStrMyName());
System.out.println(my.getMStrMyAddr());
}
public static void main (String args[]) throws Exception {
XMLTest st = new XMLTest();
st.xmlEncode();
st.xmlDecode();
}
}
这个能看明白吗
import javax.xml.parsers.*;
import org.w3c.dom.*;
import java.io.*;
import java.beans.*;
就用到这几个,你要什么包啊,JDK自带啊,你要是想用Jdom,那包是要自己下载了
你介绍的JDK的方法我也尝试一下,谢谢各位仁兄了。