⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 saxparsexml.java

📁 java创建XML文件和解析XML文件的程序
💻 JAVA
字号:
import org.xml.sax.Attributes; 
import org.xml.sax.SAXException; 
import org.xml.sax.Locator; 
import org.xml.sax.InputSource; 
import org.xml.sax.helpers.DefaultHandler; 
import javax.xml.parsers.SAXParser; 
import javax.xml.parsers.SAXParserFactory; 

public class SAXParseXML 
{
	public static void main(String[] args) 
	{
		try
		{
			//用于创建SAXParserFactory类对象factory
			SAXParserFactory factory = SAXParserFactory.newInstance();
			
			//利用SAXParserFactory类对象factory的newSAXParser()方法,来获取SAX解析器
			SAXParser saxParser = factory.newSAXParser();
			
			//创建自定义事件处理类的对象
			MyHandler myHandler = new MyHandler();
			
			//使用SAX解析器对象中的parse()方法解析XML文档
			saxParser.parse(new InputSource("c:\\Demo3.xml"),myHandler);
		}
		catch(SAXException e1){}
		catch(Exception e2){}	
	}
}

class MyHandler extends DefaultHandler
{	//自定义事件处理类
	public void startElement(String namespace,String lname,String qname,Attributes att)
	{	//元素开始事件处理
		if(att!=null)   //当元素的属性不为空值时触发事件处理
		{
			for (int i = 0; i < att.getLength(); i++) 
			{
				//用于获取该元素的名称
				System.out.println("元素名为:"+qname);
				if(att.getQName(i).equals("edition"))
				{
					//用于获取"edition"属性的名称和属性值
					System.out.print("属性名为:"+att.getQName(i));
					System.out.println(",属性值为:"+att.getValue(i));
				}
				if(att.getQName(i).equals("isbn"))
				{
					//用于获取"isbn"属性的名称和属性值
					System.out.print("属性名为:"+att.getQName(i));
					System.out.println(",属性值为:"+att.getValue(i));
				}
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -