Java 包含带标记的值的XML属性文件
我使用Java 包含带标记的值的XML属性文件,java,xml,properties,tags,sax,Java,Xml,Properties,Tags,Sax,我使用java.util.Properties类的loadFromXML方法来解析包含一些应用程序参数的XML文件。其中一个参数的值是HTML字符串,如下所示: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <entry key="THREAD_CO
java.util.Properties
类的loadFromXML
方法来解析包含一些应用程序参数的XML文件。其中一个参数的值是HTML字符串,如下所示:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="THREAD_COUNT">4</entry>
<entry key="SENDER_EMAIL">MAIL@SOMESITE.COM</entry>
<entry key="EMAIL_SUBJECT">SAMPLE SUBJECT</entry>
<entry key="EMAIL_BODY"><span style='font-family : Monotype Corsiva ; font-size:14pt'>SAMPLE TEXT</span></entry>
</properties>
有没有办法在XML属性文件中使用这样的值?在XML中使用CDATA部分,将其标记为数据,否则它将被解析为XML的一部分: 看
4.
MAIL@SOMESITE.COM
样本主题
示例文本]]>
使用xml中的CDATA部分将其标记为数据,否则它将被解析为xml的一部分:
看
4.
MAIL@SOMESITE.COM
样本主题
示例文本]]>
java.util.InvalidPropertiesFormatException: org.xml.sax.SAXParseException: Element type "span" must be declared.
at java.util.XMLUtils.load(XMLUtils.java:59)
at java.util.Properties.loadFromXML(Properties.java:852)
at com.test.mail.ConfigReader.<init>(ConfigReader.java:27)
at com.test.mail.ConfigReader.getInstance(ConfigReader.java:43)
at com.test.mail.SendMail.readParameters(SendMail.java:64)
at com.test.mail.SendMail.startJob(SendMail.java:29)
at com.test.mail.SendMail.main(SendMail.java:24)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="THREAD_COUNT">4</entry>
<entry key="SENDER_EMAIL">MAIL@SOMESITE.COM</entry>
<entry key="EMAIL_SUBJECT">SAMPLE SUBJECT</entry>
<entry key="EMAIL_BODY"><![CDATA[<span style='font-family : Monotype Corsiva ; font-size:14pt'>SAMPLE TEXT</span>]]></entry>
</properties>