下载频道 首页

·

编程开发

·

Flash游戏

·

网络教程

·

网络技术

·

手机大全

·

网络学院

·

软件下载

·

网站地图

·

收藏本站

编程首页 | Web开发 | 开发语言 | 微软开发专栏 |数据库开发 |技术跟踪 |程序人生 | 案例分析 VB Java Delphi VC/MFC C/C++ ASP.net

.ASP JSP PHP CGI JavaScript VbScript XML/SOAP Web服务器 .DB2 Access SQLServer MySQL Oracle PowerBuilder Foxpro 其它数据库

更多分类:ASP JSP PHP CGI JavaScript VbScript XML/SOAP Web服务器 网页教程 图形处理 UML教程

PCDOG编程

PCDOG首页 > 编程开发 > Web开发 > XML/SOAP > 正文


XML 文件中出现 & ? ? 这类特殊字符的一种解决方法


http://www.pcdog.com 2004-12-15 csdn
       这几天在跟一个公司合作的项目中,对方提供了RSS接口,通过这个接口,在我们网站展现出来,但是对方RSS中出现了一些麻烦的字符,比如 &,®,™  等。这些字符放到XML中,如果不做特殊处理,就会有错误产生。比如下面的XML:


<item>&</item>

在IE 浏览器,以及一些解析用的DOM中解析这个片段,就会产生错误。

在W3C的技术规范中,也可以看到这样的字符不允许出现:
http://www.w3.org/TR/2001/REC-xml-c14n-20010315

比如:对 Text Nodes 允许的字符有如下要求: the string value, except all ampersands are replaced by &amp;, all open angle brackets (< ) are replaced by &lt;, all closing angle brackets (> ) are replaced by &gt;, and all #xD characters are replaced by &#xD;.

由于这些特殊字符比较多,我们在XML中替换的工作量比较大,我们可以在DTD文件中作些定义:

比如DTD文件中增加以下部分:

<!-- PERCENT SIGN -->
<!ENTITY amp "&#38;#38;">
<!-- COPYRIGHT SIGN -->
<!ENTITY reg "&#x00AE;">
<!-- REG TRADE MARK SIGN -->
<!ENTITY trade "&#x2122;">

并在XML中定义这个XML文件需要这个DTD支持:

<!DOCTYPE HeadCount SYSTEM "eula.dtd">

这样在XML文件中出现 & &reg; &#8482; 这类特殊字符就不会再报错了。

有关更多的特殊字符可以参看:

http://xml.coverpages.org/CourtDocument11-2002-05s-DTD.txt

那里罗列的特殊字符有近200个。

&reg;

上一页:中国游戏业——被人们忽视的黑暗
下一页:一个简单的oracle分页存储过程的实现和调用

【关闭】

文 章 查 询
关键词

人气前10名              
·XML DOM初学者指南
·XML编程实例(二)
·如何把一个图像存储到XML数据中,并读取出来
·XSL语法介绍
·XML技术上传文件
·XML 文件中出现 & ? ? 这类特殊字符的一种解决方法
·Web设计中如何使用XML数据
·XML简介
·XML入门 (上)
·XMLHTTP: 网站超级粘合剂


关于我们 | 联系方式 | 合作伙伴 | 版权声明 | 帮助信息 | 网站地图
Copyright 2005 PCdog.com, All Rights Reserved