字符魔术——所见非所得

       快过年了,首先祝大家新春快乐,在过年的这段时间给大家分享点我编程时遇到的有意思的事情,事情很小,却影响不小,很有细节决定成败的以为,希望能够引起大家的共鸣和思考!

        今天和大家分享的是“小符号引发的大案件”

        我们在编程是有时候不太在意某些常见的符号,比如我们最常见的单引号,双引号,逗号,句号,回车符等,这些符号在显示的时候都没有问题,正常的代码也能处理,但是就在前段时间,它们再js中给了我一个巨大的惊吓!

        首先我们看看第一个罪魁祸首:

                                                                        字符魔术——所见非所得_第1张图片                                                                                  

       我们来看看它造成的影响:

                                    字符魔术——所见非所得_第2张图片

                                                    

        说明:这个问题是在js函数的调用中,参数出现了分割

        原因:字符创的结束标记为{’}号,而在参数中出现了这个符号,造成的结果的是出现调用失败的情况!


       然后我们再看看第二个帮凶:

                                                      字符魔术——所见非所得_第3张图片                                            

       这个最平常的回车键会有什么”危害“呢?

        第一张图片是回车符在数据库中存储形式:

                                    字符魔术——所见非所得_第4张图片              

       第二张图是在界面中的显示结果:

                                 字符魔术——所见非所得_第5张图片

       说明:软回车在数据库中的表现是个空格,复制出来在编辑器中还是空格,但是一旦在程序中执行,就会还原成回车


解决方案:

一,替换

代码:


string.Replace("\n","")

        实际这个方法较为笨拙,处理单个的字符较为快速,但是字符多了就会力不从心。

二,转换

       1,加密

       明文:

                结构组成等。 生命的进化

        密文: 

               7732396360497730496102097551193000294097243795217597320491077339514269

       这个方法实际就是用我上篇博客写的方法,可以解决基本所有的特殊字符问题,较为实用,既可以加密内容,也可以屏蔽特殊字符!

       2,存html

        这个方法实际还是采用第一个方法,不过不是消除,而是换成html语言存储数据库:

        strcontent += strcontent.Replace("\n", "
");
        strcontent += strcontent.Replace("\r", "
");

总结:

       1,想到比做到重要

       有很多时候,经验就是你想的比别人多,或者预先想到,而这种经验最好的积累办法就是自己多想,在做之前要充分想想自己要做的事情,尽自己最大的努力做到最大的缜密!起码保证大的错误不会有!

       2,传承就是财富

       我们做的项目中遇到的问题,前人80%遇到过,我们要充分利用前人这个最宝贵的巨人,调动自己的积极性,问清楚前人的经验,并将之形成文档,保证我们的传承性完整!

       3,做事和做人=两件事

       在做人的时候,我们要和气,做事留一份余地,给别人也是给自己,但是做人的道理,有时候不一定在做事上合理,更甚至会恰恰相反,我们做人和做事要分开,做人就是和和气气,做事就是认认真真,一丝不苟,将事情一条一条列出来,做好资源的备份(包含人力和物力),在最困难的时候能够顶上去,我们才能做成事!

       总结为一句话吧:很多时候,所见非所得,需要我们挖掘!

       最后祝大家新春快乐,马年吉祥!

                                字符魔术——所见非所得_第6张图片


你可能感兴趣的:(web)