import org.xml.sax.*;
import org.xml.sax.helpers.*;
import java.io.*;
public class Example1 extends DefaultHandler {
// 重载DefaultHandler类的方法
// 以拦截SAX事件通知。
//
// 关于所有有效事件,见org.xml.sax.ContentHandler
//
public void startDocument( ) throws SAXException {
System.out.println( "SAX Event: START DOCUMENT" );
} public void endDocument( ) throws SAXException {
System.out.println( "SAX Event: END DOCUMENT" );
} public void startElement( String namespaceURI,
String localName,
String qName,
Attributes attr ) throws SAXException {
System.out.println( "SAX Event: START ELEMENT[ " + localName + " ]" ); // 如果有属性,我们也一并打印出来...
for ( int i = 0; i < attr.getLength(); i++ ){
System.out.println( " ATTRIBUTE: " +
attr.getLocalName(i) +
" VALUE: " +
attr.getValue(i) );
} } public void endElement( String namespaceURI,
String localName,
String qName ) throws SAXException {
System.out.println( "SAX Event: END ELEMENT[ " +localName + " ]" );
} public void characters( char[] ch, int start, int length )
throws SAXException { System.out.print( "SAX Event: CHARACTERS[ " + ch + " ]"); try {
OutputStreamWriter outw = new OutputStreamWriter(System.out);
outw.write( ch, start,length );
outw.flush();
} catch (Exception e) {
e.printStackTrace();
} System.out.println( " )" ); }
public static void main( String[] argv ){ System.out.println( "Example1 SAX Events:" );
try { // 建立SAX 2解析器...
XMLReader xr = XMLReaderFactory.createXMLReader(); // 安装ContentHandler...
xr.setContentHandler( new Example1() ); // 解析文件...
xr.parse( new InputSource(
new FileReader( "Example1.xml" )) );
}catch ( Exception e ) {
e.printStackTrace();
} }}
import org.xml.sax.helpers.*;
import java.io.*;
public class Example1 extends DefaultHandler {
// 重载DefaultHandler类的方法
// 以拦截SAX事件通知。
//
// 关于所有有效事件,见org.xml.sax.ContentHandler
//
public void startDocument( ) throws SAXException {
System.out.println( "SAX Event: START DOCUMENT" );
} public void endDocument( ) throws SAXException {
System.out.println( "SAX Event: END DOCUMENT" );
} public void startElement( String namespaceURI,
String localName,
String qName,
Attributes attr ) throws SAXException {
System.out.println( "SAX Event: START ELEMENT[ " + localName + " ]" ); // 如果有属性,我们也一并打印出来...
for ( int i = 0; i < attr.getLength(); i++ ){
System.out.println( " ATTRIBUTE: " +
attr.getLocalName(i) +
" VALUE: " +
attr.getValue(i) );
} } public void endElement( String namespaceURI,
String localName,
String qName ) throws SAXException {
System.out.println( "SAX Event: END ELEMENT[ " +localName + " ]" );
} public void characters( char[] ch, int start, int length )
throws SAXException { System.out.print( "SAX Event: CHARACTERS[ " + ch + " ]"); try {
OutputStreamWriter outw = new OutputStreamWriter(System.out);
outw.write( ch, start,length );
outw.flush();
} catch (Exception e) {
e.printStackTrace();
} System.out.println( " )" ); }
public static void main( String[] argv ){ System.out.println( "Example1 SAX Events:" );
try { // 建立SAX 2解析器...
XMLReader xr = XMLReaderFactory.createXMLReader(); // 安装ContentHandler...
xr.setContentHandler( new Example1() ); // 解析文件...
xr.parse( new InputSource(
new FileReader( "Example1.xml" )) );
}catch ( Exception e ) {
e.printStackTrace();
} }}
放到d盘
CLASS_PATH里加入:D:\jdom\jdom.jar
运行上面那个示例,还是有错误,我是菜鸟,java不会的,能不能详细点介绍一下java&XML环境怎么配置的,我把我的设置列出来:
[CLASS_PATH]D:\j2sdk\bin;D:\j2sdk\lib\dt.jar;D:\j2sdk\lib\tools.jar;D:\j2ee\lib\j2ee.jar;D:\jdom\jdom.jar
[JAVA_HOME] D:\j2sdk
[J2EE_HOME] D:\j2ee
[JAVA_XML_PACK_HOME] D:\java_xml_pack
[JAXM_HOME] D:\java_xml_pack\jaxm
[JAXP_HOME] D:\java_xml_pack\jaxp
[JAXR_HOME] D:\java_xml_pack\jaxr
[JAXRPC_HOME] D:\java_xml_pack\jaxrpc
[PATH] D:\j2sdk\bin;D:\j2ee\bin
java -classpath %classpath%;D:\jdom\lib\xerces.jar; Example1 abc.mainExample1.class是在j2sdk的bin目录下
我用的是sax2