关于特殊字符的处理

关于特殊字符的处理

ID:34743109

大小:171.17 KB

页数:3页

时间:2019-03-10

关于特殊字符的处理_第1页
关于特殊字符的处理_第2页
关于特殊字符的处理_第3页
资源描述:

《关于特殊字符的处理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、CRMEasy.Net关于特殊字符的处理说明CRMEasy.Net(以下简称CRM)某些模块在处理一些特殊字符时会引起处理出错,本文档针对当前的CMR模块结构,给出如下解决方法,请对照《特殊字符处理流程图.vsd》阅读:一、解决方法的思路:由于CRM各模块处理的数据类型并不尽相同,某些特殊字符可能会在这个模块引起处理出错,但在另一模块是可以正常处理的。因此我们可以在数据提交给模块处理前,先对一些可能引起该模块处理出错的特殊字符进行转义替换,待该模块处理完这些数据后再反向转义替换回来即可。以下我们将从整个CRM的角度分析各模块,列出

2、一些可能引起处理出错的特殊字符:&:与符号。根据XML规范,如果属性值或元素内容中包含该字符,是需要先实体化为&再进行处理的。因此我们在组织XML内容前,需要先对该字符进行转换,以免引起XML的处理出错。<:小于号。根据XML规范,如果属性值或元素内容中包含该字符,是需要先实体化为<再进行处理的。因此我们在组织XML内容前,需要先对该字符进行转换,以免引起XML的处理出错。>:大于号。根据XML规范,如果属性值或元素内容中包含该字符,是需要先实体化为>再进行处理的。因此我们在组织XML内容前,需要先对该字符进行

3、转换,以免引起XML的处理出错。<>:成对的尖括号。前台界面有时会用请求到的数据动态创建HMTL页面的DOM节点,如创建树节点等。如果用于创建DOM节点的内容中包含有成对出现的尖括号,且尖括号内没有内容时,浏览器会尝试按HTML标准去解释。若它是合法的HTML标记,刚浏览器会显示成相应的HTML元素,否则浏览器将忽略并过滤掉这对尖括号及其内的内容,并且不会显示出来。‘:单引号。(1)可能会引起执行SQL语句或存储过程的执行出错。(2)返回给前台页面的数据中,一般是使用一对单引号引起来的内容作为字符串,因此如果这个字符串中包含有单引

4、号,就会引起JavaScript语法错误。“:双引号。JavaScript可以使用一对单引号或一对双引号作为字符串类型的标记符,由于返回给前台页面的数据中,也可能使用一对双引号引起来的内容作为字符串,因此如果这个字符串中包含有双引号,就会引起JavaScript语法错误。:反斜杠。返回给前台页面的数据中如果包含有反斜杠,则JavaScript会把该反斜杠及其后的一个字符当作转义字符处理。如果它是合法的转义字符,刚解释为相应的特殊字符,否则将不显示该反斜杠字符。还有一种情况,是当这个反斜杠后面刚好是一个字符串的标记符时(单引号或双

5、引号),这时还会引起JavaScript语法错误。(r):回车符。返回给前台页面的数据中如果包含有回车符,则JavaScript对这些数据进行处理时,就会在该字符的位置回车了,也就是说JavaScript执行了一行没有结束符的代码,这样会引起JavaScript语法错误。():换行符。返回给前台页面的数据中如果包含有换行符,则JavaScript对这些数据进行处理时,就会在该字符的位置换行了,也就是说JavaScript执行了一行没有结束符的代码,这样会引起JavaScript语法错误。(t)(v)(f):水平制表符、

6、垂直制表符、换页符。用户有可能把包含这样格式符的文本粘贴到前台页面中,并作为内容保存到数据。当我们从数据中把这些内容取出来显示回页面里,有可能会引起JavaScript语法错误。但我没有这三个字符的测试验证,因此这三个特殊字符可以作为保留字符暂不处理。二、处理流程以下将结合《特殊字符处理流程图.vsd》一步步进行说明:1.发送数据(1)用户在页面上输入包含有特殊字符的内容,以测试整个特殊字符的处理方法是否可行。用户现在输入的内容为1.0(2)当用户要把内容1.0保存时,需要在拼凑XML前对内容1.0进行R1转换,转换结果为1.1,

7、以保证XML的元素内容不会引起XML处理出错,拼凑后的XML结果为1.2。然后把1.2的内容发送给后台处理页面(3)从后台页面收到1.2以后,一直到dblogic.dll进行业务逻辑处理前,是不用对1.2这些内容进行解释处理的,所以这个过程没有对1.2进行任何转义替换(4)dblogic.dll要进行业务逻辑处理时,会先把收到的XML转换成DataSet,这个转换过程中,C#会自动进行C1转换。然后把转换后的内容在为存储过程的实参或SQL语句的内容执行前,要进行R2转换成1.3以保证数据成功保存到数据库时为1.4(5)现在可以看到

8、,用户在界面输入的内容,跟最终保存到数据库里的内容是完全一致的2.接收数据(1)为响应用户请求,数据库返回数据2.0(2)dblogic.dll从数据库取得的数据类型是DataSet,然后在转换成XML的过程,C#会自动进行C2转换,转换结果为2.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。