- 
            
            SAX解析XML的速度比DOM的块, 
 SAX的解析XML的解析器,需要重写startElement()开始解析的方法and endElemaent()方法 结束解析的方法and characters()方法
 重写charaters()方法时,String(byte[] bytes,int offset,int length)的构造方法进行数组的传递
 再去除解析时多余空格
 if(!value.trim().equals("")){
 System.out.println(value);
 }
 使用 SAX 解析 XML 文件的节点名和节点间文本
 startElement方法——String qName(第三个参数):节点名
 startElement方法——Attributes attributes(第四个参数):节点名的属性操作
 characters方法——char[] ch(第一个参数):xml整个文本内容,所以需截取想要的内容查看全部
- 
            
            SAX方式解析xml步骤 
 1.通过SAXParserFactory的静态newInstance()方法获取一个SAXParserFactory的对象。
 2.通过SAXParserFactory对象的newSAXParser()方法返回一个SAXParser类的对象。
 3.创建一个类继承DefaultHandler,重写其中的一些方法并创建类的实例.
 4.通过SAXParser类的Parse(Stringname,df)方法解析xml文件,参数Stringname为路径名,df为继承于DefaultHandler类的实例化对象,不需要定义变量存储返回的类型.
 SAX是按节点顺序进行解析,遇到xml的声明即开始解析,遇到最后一个节点的尾节点便结束解析,需要用户自己定义一个类继承于DefaultHandler类来解析,遇到开始标签节点便通过startElement开始解析节点,遇到结束标签节点便通过endElement结束解析,再遇到开始节点继续通过startElement解析,一直循环直到xml文件最后的结束标签节点.
 5.在继承于DefaultHandler这个类中需要重写父类的startElement()和endElement()方法,来进行开始节点与结束节点的解析,再重写startDocument()方法与endDocument()方法来标识解析的开始与结束.查看全部
- 
            
            解析文件节点以及子节点的值 
 1.先获取子节点,Node下有方法getChildNodes()来获取某个节点的子节点的集合,返回NodeList类型.
 NodeList childNodes=book.getChildNodes()//包含book节点所有的子节点,两个标签之间的所有内容都看成是子节点.
 2.通过childNodes的getLength()方法返回字点的个数(空格与换行字符看成为一个文本节点,标签与结束标签看成一个元素节点)
 3.通过NodeList的item(i)获取指定位置子节点的名称返回Node类型.再用Node类型的getNodeName()方法就可以获取节点名
 Node childnode=childNodes.item(i);
 String name=childnode.getNodeName();
 可以通过Node类的getNodeType()来区分文本类型的node以及元素类型的node,看当前Node类型是否与Node."节点类型英文全称"相同.
 if(childnode.getNodeType==Node.ELEMENT_NODE)
 {System.out.println(name)}
 4.不能直接通过Node的getNodeValue()来获取节点的值,因为元素节点的nodeValue的返回值为null而且标签之间的文本被看做是该标签的子节点.所以要用Node的getFirstChild()此时获取的子节点为文本节点,Text节点类型的nodeValue返回值为节点内容,再getNodeValue()。
 或者直接用Node的getTextContent()方法直接获取节点值。
 如果该Node节点还存在其他子节点并且有节点值<name><a>广州大学</a>华软学院</name>,那么用getFirstChild().getNodeValue()一样是null,因为获取的子节点仍然是element类型的
 如果用Node的getTextContent(),一样会把<a>元素节点当成是Content输出。查看全部
- 
            
            获取xml文件内容的 
 四种解析方式:DOM SAX DOM4J JDOM
 DOM、SAX :java 官方方式,不需要下载jar包
 DOM4J、JDOM :第三方,需要网上下载jar包
 DOM使用步骤:
 准备工作
 1、创建一个DocumentBuilderFactory的对象
 DocumentBuilderFactory dbf = DocumnetBuilderFactory.instance();
 2、创建一个DocumentBuilder的对象
 DocumentBuilder db = dbf.newDocumentBuilder();
 3、通过DocumentBuilder对象的parse方法加载xml文件到当前项目
 Document document = db.parse("*.xml");查看全部
- 
            
            用xml来存储信息,然后使用特定的程序来进行进行可视化,让人们读懂。 查看全部
- 
            
            暂时用不到, 讲的个项目没啥关系 查看全部
- 
            
            四种解析方式: - DOM 
- SAX 
- DOM4J 
- JDOM 
 查看全部
- 
            
            解析XML文件的目的: 获取节点名、节点值、属性名、属性值。 查看全部
- 
            
            XML文件例子 注意:标签区分大小写。 查看全部
- 
            
            node 节点有三种, element表示当前标签元素 attr表示当前节点的属性值 text 表示文本节点 去除text节点的一个办法是 查看全部
- 
            
            遍历XML文件的节点有两种方法: - 在不清楚当前节点的属性个数时使用 node接受nodelist中的一个node然后用NamedNodeMap 接受当前节点的所有属性 并以Map形式返回 
 查看全部
- 
            
            解析XML文件需要对象: DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); DocumentBuilder db=dbf.newDocumenbuilder(); //解析XML文件 db.parse(URI); 查看全部
举报
 
             
         
                 
                 
                 
                 
                