很简单的程序:testXml.java: package cn.vad.basalservice.dbop; import org.jdom.*;
import org.jdom.input.*;
import org.jdom.output.*;
import java.io.*;
import java.util.*; public class testXml
{
public org.jdom.Document aDoc = new Document();
public org.jdom.Element rootEle; public String strRootEle = "RootElement";
public String strOutputPath = "D:\\jsp\\testok.xml"; public testXml()
{
//向根元素中增加子元素
aDoc.setRootElement( new Element( strRootEle ) );
rootEle = aDoc.getRootElement(); addRootElement(); outputXml(); } public void outputXml()
{
try
{
//org.jdom.output.XMLOutputter xmlOutputter = new XMLOutputter( "",true,"GB2312" );
//xmlOutputter.output( aDoc,new FileOutputStream(this.strOutputPath) ); //亦可
XMLOutputter outputter = new XMLOutputter(" ", true);
outputter.output(aDoc, System.out);
FileWriter writer = new FileWriter(this.strOutputPath);
outputter.output(aDoc, writer);
writer.close(); }
catch( IOException e )
{
System.out.println(e.getMessage());
}
} public void addRootElement()
{
rootEle.addContent( new Element("testRoot2").addContent("testok_02") );
rootEle.addContent( new Element("testRoot3").addContent("testok_03") );
//如果加上一行就会写两个元素到XML中,如果不加就一条
//说明每写一次都是将XML中的内容清掉,再重写。现在需要不断追加该怎么办呢?!
} public void addElement( String str,String val )
{
rootEle.addContent( new Element(str).addContent( val ) ); outputXml();
} public void removeElement()
{
rootEle.removeChild( "str" );
outputXml();
} }
import org.jdom.input.*;
import org.jdom.output.*;
import java.io.*;
import java.util.*; public class testXml
{
public org.jdom.Document aDoc = new Document();
public org.jdom.Element rootEle; public String strRootEle = "RootElement";
public String strOutputPath = "D:\\jsp\\testok.xml"; public testXml()
{
//向根元素中增加子元素
aDoc.setRootElement( new Element( strRootEle ) );
rootEle = aDoc.getRootElement(); addRootElement(); outputXml(); } public void outputXml()
{
try
{
//org.jdom.output.XMLOutputter xmlOutputter = new XMLOutputter( "",true,"GB2312" );
//xmlOutputter.output( aDoc,new FileOutputStream(this.strOutputPath) ); //亦可
XMLOutputter outputter = new XMLOutputter(" ", true);
outputter.output(aDoc, System.out);
FileWriter writer = new FileWriter(this.strOutputPath);
outputter.output(aDoc, writer);
writer.close(); }
catch( IOException e )
{
System.out.println(e.getMessage());
}
} public void addRootElement()
{
rootEle.addContent( new Element("testRoot2").addContent("testok_02") );
rootEle.addContent( new Element("testRoot3").addContent("testok_03") );
//如果加上一行就会写两个元素到XML中,如果不加就一条
//说明每写一次都是将XML中的内容清掉,再重写。现在需要不断追加该怎么办呢?!
} public void addElement( String str,String val )
{
rootEle.addContent( new Element(str).addContent( val ) ); outputXml();
} public void removeElement()
{
rootEle.removeChild( "str" );
outputXml();
} }
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货