大家好?我又遇到個(gè)問(wèn)題,是關(guān)于實(shí)體引用的
dtdFile2.dtd文件:
<!ENTITY  java  SYSTEM  "TestXML.java" >
<!ELEMENT  root   (son1,son2)>
<!ELEMENT  son1  (#PCDATA)>
<!ELEMENT  son2  (#PCDATA)>

shiti.xml文件:
<?xml version="1.0"  encoding="utf-8"?>
<!DOCTYPE root  SYSTEM  "dtdFile2.dtd">
<root>
<son1>
這是個(gè)java文件:
&java;
</son1>
<son2>
你好!
</son2>
</root>

TestXML.java文件:【隨便一個(gè)名為T(mén)estXML.java即可】
import javax.xml.parsers.*;
import org.xml.sax.helpers.*;
import org.xml.sax.*;
import java.io.*;
import org.w3c.dom.*;

public class  TestXML
{
public static void main(String args[])
{
    
try{
         DocumentBuilderFactory  factory
=DocumentBuilderFactory.newInstance();
         DocumentBuilder builder
=factory.newDocumentBuilder();
         MyHandler  handler
=new MyHandler();
         builder.setErrorHandler(handler);
         Document document
=builder.parse(new File("Price.xml"));
         NodeList nodelist
=document.getElementsByTagName("goods");
         
int size=nodelist.getLength();
         
for(int k=0;k<size;k++)
             
{
                  Node node
=nodelist.item(k);
                  String name
=node.getNodeName();
                  String content
=node.getTextContent();
                  System.out.print(name);
                  System.out.println(
":  "+content);
             }

    }


    
catch(Exception e)
           
{
                System.out.println(e);
           }


}

}


class MyHandler extends DefaultHandler
{
    String errorMessage
=null;
    
public void error(SAXParseException e) throws SAXException
    
{
        errorMessage
=e.getMessage();
        System.out.println(
"一般錯(cuò)誤:"+errorMessage);
    }


    
public void fatalError(SAXParseException e) throws SAXException
    
{
        errorMessage
=e.getMessage();
        System.out.println(
"致命錯(cuò)誤:"+errorMessage);
    }

}

我在瀏覽器里打開(kāi)時(shí)有如下提示
無(wú)效字符是;[引號(hào)]嗎?那又該如何表示呢?謝謝大家

名稱(chēng)包含無(wú)效字符。處理資源 'file:///E:/web/TestXML.java' 時(shí)出錯(cuò)。第 19 行,位置: 22

 

 

 

 

   for(int k=0;k<size;k++)
    ---------------------^
實(shí)體引用中的特殊符號(hào)也要采用實(shí)體引用,相當(dāng)簡(jiǎn)單的原因