社区
XML/XSL
帖子详情
XML中特殊字符处理问题
ATHENA112
2007-10-11 02:44:41
50分放了好几天都没人,再加100分。问题描述:
德文"Ü"转换后为Ü 在HTML中正常显示,XML里报错,类似的还有很多。如果不转换那么如引号,连接符号等就会报错,求一简便解决方法,要求不用CDATA。
原帖:http://topic.csdn.net/u/20071007/22/3ea0d3e5-b073-4324-847e-bbe81962ad94.html
解决者结2个给150分。
...全文
3055
23
打赏
收藏
XML中特殊字符处理问题
50分放了好几天都没人,再加100分。问题描述: 德文"Ü"转换后为Ü 在HTML中正常显示,XML里报错,类似的还有很多。如果不转换那么如引号,连接符号等就会报错,求一简便解决方法,要求不用CDATA。 原帖:http://topic.csdn.net/u/20071007/22/3ea0d3e5-b073-4324-847e-bbe81962ad94.html 解决者结2个给150分。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
itymx
2008-07-19
打赏
举报
回复
学习
顶
qiuming0306
2008-07-19
打赏
举报
回复
2进制吧
webwuyee
2008-07-17
打赏
举报
回复
<![CDATA[︶ㄣ壞壞d良]]>
这样的代码,如何入库到xml的字段内呢
入库的时候就报错,提示无效字符
UltraBejing
2008-05-01
打赏
举报
回复
支持搂主,收藏
fengwuxie
2007-11-15
打赏
举报
回复
<xsl:text disable-output-escaping="yes"><![CDATA[这里放]]></xsl:text>
Eleve
2007-11-13
打赏
举报
回复
路过。帮顶了
gzdiablo
2007-11-08
打赏
举报
回复
用UTF-8的编码 转换成base64储存在xml里面就行了,不管什么数据都能储存,而且解码的时候也不难
cds27
2007-11-06
打赏
举报
回复
在前提没变的情况下,数据的修改只能是这样最省事了,估计没有更好的办法了。
跨浏览器方面,你可以用JS+DOM+XML,这样可以避免disable-output-escaping的问题,而且读到的数据和disable-output-escaping是一样的。
cds27
2007-10-26
打赏
举报
回复
快吐血了!!!
你完全没看到我在说什么!
再说明一次好了,如果你还是不开窍,那没办法了。
>>德文"Ü"转换后为Ü 在HTML中正常显示,XML里报错,
Ü是HTML里的转义符,知道吗???或者说是HTML可以识别的转义符!
但是!它并不是XML可以识别的转义字符,明白吗?
所以你要怎么做呢?
首先,确定一下目标,就是让HTML能识别,也就是Ü。
但是,同样要让XML不会认为这是个转义符,因为“&....;”的形式是XML转义符的形式,而已经定义的转义符并没有Ü。
所以,你必须将这个形式破解,其实也是一种常见的解决方案,就是不知道为什么你不懂。
即,&变& ,那么Ü变Ü。知道吗?
给你一个XML+XSLT的例子帮助你理解。
xml.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="xml.xsl"?>
<root>
Ü
</root>
xml.xsl:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:value-of select="." disable-output-escaping="yes"/>
</xsl:template>
</xsl:stylesheet>
ATHENA112
2007-10-26
打赏
举报
回复
楼上一直都没说怎么“控制输出”我怎么可能理解?说到底是用disable-output-escaping,但是Netscape、Mozilla、Firefox等是不支持的,解决办法只有判断浏览器加JS控制,似乎是有点麻烦了,不过也不失为一个解决办法。求问下还有没有其他更好的解决办法呢?
cds27
2007-10-18
打赏
举报
回复
我现在的字符是Ü
------------
因为Ü不是XML认识的符号,但是又用了XML占用的符号“&”,所以必须用&的转义符号即& 了解否?
所以你要转换的地方就是&变& ,即Ü变Ü
ATHENA112
2007-10-18
打赏
举报
回复
……楼上完全没看懂我问的什么
to hejunbin :
怎么转进数据库的,逆过转回来 ---就是转不回来啊,如果你会请帮我把Ü转成Ü。
或者放入数据库的时候就不要转义德文。。。 --- 这个,为了方便HTML显示是已经转好的了,不是要我全部重新写吧。
还有就算转义, 德文有几个字母啊。。。 --- 开这个帖主要目的是为找个通用的解决办法,希望能解决所有特殊字符,而不是只针对我说的德文,所以开帖才说“类似的还有很多”而不时“其他类似几个”。
hejunbin
2007-10-17
打赏
举报
回复
怎么转进数据库的,逆过转回来。。。
或者放入数据库的时候就不要转义德文。。。
还有就算转义,
德文有几个字母啊。。。
http://zhidao.baidu.com/question/659328.html
只比26个英文多四个啊。。。
ATHENA112
2007-10-16
打赏
举报
回复
楼上的意思是叫我直接写Ü和其他符号,再加上转义,但是,我现在的字符是Ü而不是Ü,也就是说数据库里的是Ü(当然还有很多其他类似的),按楼上的方法我想把它转回来得到的却是空白或乱码……请问怎么解决
hejunbin
2007-10-15
打赏
举报
回复
引号,连接符号类似的可以 转义 !!!!!!!!!!!!!!!!!entity开始我也想到
这些不多的!!!!!!!!!!!!
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp " ">
<!ENTITY copy "©">
<!ENTITY reg "®">
<!ENTITY trade "™">
<!ENTITY mdash "—">
<!ENTITY ldquo "“">
<!ENTITY rdquo "”">
<!ENTITY pound "£">
<!ENTITY yen "¥">
<!ENTITY euro "€">
]>
如果还有别的 你自己再加几个。。。
cds27
2007-10-15
打赏
举报
回复
“&”符号在XML里必须转义使用,写成:&
显示时再加上输出控制即可。
常见的XML转义字符只有少数几个,转换完就可以了。不清楚的话网上搜一下。
ATHENA112
2007-10-14
打赏
举报
回复
……
“如果不转换那么如引号,连接符号等就会报错”
开帖就说了
hejunbin
2007-10-12
打赏
举报
回复
<?xml version="1.0" encoding="utf-8"?>
<he>
<junbin>Ü</junbin>
</he>
直接就可以用的,用utf-8编码就是了。。。
hejunbin
2007-10-12
打赏
举报
回复
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet [
<!ENTITY Uuml "ü">
]>
<he>
<junbin>Ü</junbin>
</he>
ATHENA112
2007-10-12
打赏
举报
回复
entity开始我也想到了,不过我这里的特殊字符有很多,不止是“Ü”,开帖时就说了。
而且我想要的是个通用的解决方法。
加载更多回复(3)
解析
XML
特殊
字符
方法
解析
XML
特殊
字符
方法有二种
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
XML
特殊
字符
mybatis
xml
中
特殊
字符
处理
及
特殊
符号
主要介绍了mybatis
xml
中
特殊
字符
处理
及mybatis
特殊
符号
处理
技巧,mybatis
特殊
符号
处理
给大家介绍了两种写法,感兴趣的朋友一起看看吧
xml
转javaBean,javaBean转
xml
,
xml
标签大小写
问题
,以及对
xml
特殊
符号的
处理
xml
转javaBean,javaBean转
xml
,
xml
标签大小写
问题
,CDATA的生成,以及对
xml
特殊
符号的
处理
C#
XML
字符
串包含
特殊
字符
的
处理
转换方法小结
为了能正常输出
XML
格式的内容,必须要对不被
XML
允许的那些
特殊
字符
进行转换。本文介绍的正是如何使用C#判断
XML
字符
串是否含
特殊
字符
并进行转换。 以下是几个
特殊
字符
的对应实体。 < < 小于号 > > 大于号 & & 和 ' ‘ 单引号 " “ 双引号 在C#
中
,直接调用C#提供的方法,保存之后就会自动将
特殊
字符
转为对应实体: string s =System.Security.SecurityElement.Escape(s); 或者 将内容放在<![CD
xml
的
特殊
字符
的
处理
方法
在
xml
中
,有一些符号作为
XML
的标记符号,一些特定情况下,属性值必须带有这些
特殊
符号。 下面主要是讲解一些常用的
特殊
符号的
处理
XML/XSL
8,906
社区成员
22,677
社区内容
发帖
与我相关
我的任务
XML/XSL
XML/XSL相关问题讨论专区
复制链接
扫一扫
分享
社区描述
XML/XSL相关问题讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章