Read and write XML configuration files with applet

xiaoxiao2021-03-06  38

This small program uses the DOM to read the XML file, write the XML file with DOM4J. DOM4J Download Address: http://sourceforge.net/projects/dom4j1,applet main program mainframe.javaPackage Frame

/ ** * @Author WLS

* / Import java.applet. *;

Import java.awt. *; import java.awt.event. *;

public class mainFrame extends Applet {DomXml domxml = new DomXml (); Button btnExit = new Button ( "Exit"); Button btnRun = new Button ( "Save"); Label lblMain = new Label ( "dynamicroute.xml Profile") Label lblsiteInfo = new label ("SrcserverID:"); label lblpath = new label ("destserverid:"); label lblfilename = new label ("SwitchServer:"); label lblsession = new label ("metric:"); label LBLSuccess = New label ("");

TextField txtSiteinfo = new TextField (domxml.getSrcserverid (), 10); TextField txtPath = new TextField (domxml.getDestserverid (), 10); TextField txtFilename = new TextField (domxml.getSwitchserver (), 10); TextField txtSession = new TextField (Domxml.getMetric (), 10);

Panel p6 = new panel (); panel p1 = new panel (); panel p2 = new panel (); panel p3 = new panel (); panel p5 = new panel (); panel p5 = new panel (); panel p7 = new panel (); panel p8 = new panel (); public void init () {resize (400, 300); p6.Add (lblmain); p1.Add (lblsiteInfo); p2. Add (lblpath); p2.add (txtpath); p3.add (lblsession); p4.Add (btnrun); p4.add (btnexit); p5.add (lblfilename); p5.add (txtFileName); P8.Add (lblsuccess); setLayout (4, 2, 1, 1)); add (p6); add (p7); add (p1); add (p2); add (p5) Add (p3); add (p4); add (p8);}

public boolean action (Event evt, Object obj) {if (evt.target instanceof Button) {String btnName = (String) obj; if (btnName.equals ( "Save")) {try {domxml.setSrcserverid (txtSiteinfo.getText ( )); domxml.setDestserverid (txtPath.getText ()); domxml.setSwitchserver (txtFilename.getText ()); domxml.setMetric (txtSession.getText ()); buildXml buildxml = new buildXml (); if (buildxml.createXMLFile ( "DynamicRoute.xml", DomXML) == 1 && Buildxml.formatXMLFile ("DynamicRoute.xml") == 1) {LBLSuccess.Settext ("SAVE SUCCESS!"); System.out.Println ("SAVE SUCCESS!") }}}} Catch (EXCEPTION E) {E.PrintStackTrace ();}} Else IF (btnname.equals ("exit")) {system.exit (0);}}}}}} Return Super.Action (EVT, OBJ); Public static void main (string args []) {new mapedownload (new mainframe ());}}

class FrameDownload extends Frame {public FrameDownload (Applet applet) {setSize (400, 300); add ( "Center", applet); applet.init (); setVisible (true); this.addWindowListener (new closeWindows ());} }

Class CloseWindows Extends Windowadapter {Public Void WINDOWCLOSING (WindowEvent E) {Frame FRM = ()); frm.dispose (); system.exit (0);}} 2, read XML DomXML. JavaPackage Frame;

Import javax.xml.parsers. *; import org.w3c.dom. *;

/ * * CREATED ON 2004-8-19 * @Author WLS * Java Read XML Document * Using DOM to read an XML document content * * /

public class DomXml {private String srcserverid; private String destserverid; private String switchserver; private String metric; public DomXml () {try {initXml ( "dynamicroute.xml");} catch (Exception ex) {metric = "0";} } public string getsrcserverid () {return srcserverid;}

Public void setsrcserverid (string srcserver) {this.srcserverid = srcserverid;}

Public string getDestServerId () {return destserverid;}

Public void setDestServerId (string destserver) {this.destserverid = destserverid;}

Public string getswitchserver () {return switchserver;}

Public void setSwitchServer (string switchserver) {this.switchserver = switchserver;

Public string getMetric () {return metric;}

Public void setmetric (string metric) {this.metric = metric;}

public void initXml (String fileName) throws Exception {DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance (); DocumentBuilder bulider = factory.newDocumentBuilder (); Document doc = bulider.parse (fileName); NodeList nl = doc.getElementsByTagName ( "dynamicroute");

For (int i = 0; i

Element node = (Element) nl.item (i); srcserverid = node.getElementsByTagName ( "srcserverid") item (0) getFirstChild () getNodeValue () trim ();.... Destserverid = node.getElementsByTagName ( "destserverid" ) .item (0). getnodeValue (). Trim (); switchserver = node.getElementSbyTagname ("ServerID"). Item (0). getFirstChild (). getnodevalue (). Trim (); metric = node .getelements. Getfirstchild (). getnodevalue (). Trim ();}}} 3, write XML file class Buildxml.javaPackage frame;

Import java.io. *;

Import org.dom4j. *; import org.dom4j.io. *;

/ ** * @Author WLS

* /

Public class buildxml {

Public buildxml () {

}

/ ** * Create an XML document, the document name is determined by the input parameter

* @Param FileName needs to be established file name

* @return returns the result of the operation, 0 tables fail, 1 table is successful

* /

Public int CreatexmlFile (String FileName, Domxml Domxml) {

/ ** Return to the results, 0 tables fail, 1 table is successful * /

Int returnvalue = 0;

/ ** Establish Document Object * / Document Document = DocumentHelper.created = DocumentHelper.createdocument (); / ** Root Root Root Root Root * / Element RouteEleMent = Document.adDelement ("Route"); / ** Add the first DynamicRoute node * / Element dynamicrouteElement = routeElement.addElement ( "dynamicroute"); / ** show added content parameter * / //bookElement.addAttribute("show","yes "); / ** join node * / Element srcserveridElement = dynamicrouteElement.addElement ( "srcserverid"); Element destserveridElement = dynamicrouteElement.addElement ( "destserverid"); Element switchserverElement = dynamicrouteElement.addElement ( "switchserver"); Element serveridElement = switchserverElement.addElement ( "serverid"); Element metricElement = dynamicrouteElement.addElement ( " metric "); / ** set the title of the content * / srcserveridElement.setText (domxml.getSrcserverid ()); destserveridElement.setText (domxml.getDestserverid ()); serveridElement.setText (domxml.getSwitchserver ()); metricElement.setText ( Domxml.getMetric ()); try {/ ** write content in Document * / XMLWRITER WRITER = New Filewriter (New File (Filename)); Writer.Write (); Writer.close (); / ** Execution, need to return 1 * / returnValue = 1;} catch (Exception EX) ) {EX.PrintStackTrace ();} Return ReturnValue;} / ** * Format XML documentation and solve Chinese problems

* @Param FileName

* @Return

* /

Public int formatXMLFile (String filename) {

Int returnvalue = 0;

Try {

SAXReader saxreader = new saxreader ();

Document Document = SAXReader.read (New File (FileName));

XMLWRITER OUTPUT = NULL;

/ ** Format output, type IE browsing * /

Outputformat format = outputformat.createprettyPrint ();

/ ** Specify XML character set encoding * / Format.setencoding ("UTF-8");

Output = New XMLWRITER (New File (New File (Filename), Format);

Output.write (document);

Output.close ();

/ ** Execute success, need to return 1 * /

ReturnValue = 1;

} Catch (exception ex) {

EX.PrintStackTrace ();

}

Return ReturnValue;

}

}

转载请注明原文地址:https://www.9cbs.com/read-77181.html

New Post(0)