0
点赞
收藏
分享

微信扫一扫

SAX读取XML报错


控制台错误:

[Fatal Error] :7:6: The string "--" is not permitted within comments.

Exception in thread "main" org.xml.sax.SAXParseException: The string "--" is not permitted within comments.

    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)

    at org.email.SaxTest.main(SaxTest.java:21)

 

java代码:

package org.email;

import java.io.FileReader;
import java.io.IOException;
import javax.xml.parsers.ParserConfigurationException;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.DefaultHandler;
import org.xml.sax.helpers.XMLReaderFactory;

public class SaxReadXml extends DefaultHandler {
public static void main(String[] args) throws ParserConfigurationException,
SAXException, IOException {

XMLReader xr = XMLReaderFactory
.createXMLReader("org.apache.xerces.parsers.SAXParser");
xr.setContentHandler(new SaxReadXml());
xr.parse(new InputSource(new FileReader(
"D://WORK//SendEmail//src//Config.xml")));
}

public void characters(char[] ch, int start, int length)
throws SAXException {

String data = new String(ch, start, length);
System.out.println("E-mail:" + data);

}
}

XML文档:

<?xml version="1.0" encoding="UTF-8"?>

<memory>

    <!--王小林-->

    <email>

       <receiver>81401592@qq.com</receiver>

    </email>

    <!-- me -->

    <email>

       <receiver>1058106015@qq.com</receiver>

    </email>

 

</memory>

 

原因分析:注意此处注释:<!--王小林-->与下方得区别<!-- me -->

 

王小林后面少了一个空格。

 


举报

相关推荐

0 条评论