c#模拟js escape方法的简单实例

 更新时间:2013年11月27日 14:48:19   作者:  
这篇文章主要介绍了c#模拟js escape方法的简单实例,有需要的朋友可以参考一下
复制代码 代码如下:

public static string Escape(string s)
        {
            StringBuilder sb = new StringBuilder();
            byte[] ba = System.Text.Encoding.Unicode.GetBytes(s);
            for (int i = 0; i < ba.Length; i += 2)
            {
                if (ba[i + 1] == 0)
                {
                    //数字,大小写字母,以及"+-*/._"不变
                    if (
                          (ba[i] >= 48 && ba[i] <= 57)
                        || (ba[i] >= 64 && ba[i] <= 90)
                        || (ba[i] >= 97 && ba[i] <= 122)
                        || (ba[i] == 42 || ba[i] == 43 || ba[i] == 45 || ba[i] == 46 || ba[i] == 47 || ba[i] == 95)
                        )//保持不变
                    {
                        sb.Append(Encoding.Unicode.GetString(ba, i, 2));

                    }
                    else//%xx形式
                    {
                        sb.Append("%");
                        sb.Append(ba[i].ToString("X2"));
                    }
                }
                else
                {
                    sb.Append("%u");
                    sb.Append(ba[i + 1].ToString("X2"));
                    sb.Append(ba[i].ToString("X2"));
                }
            }
            return sb.ToString();
        }

相关文章

  • js验证电话号码手机号码的正则表达式

    js验证电话号码手机号码的正则表达式

    本篇文章主要是对js验证电话号码手机号码的正则表达式进行了介绍。需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • Winform动态加载TabControl用法实例

    Winform动态加载TabControl用法实例

    这篇文章主要介绍了Winform动态加载TabControl用法,以实例形式详细讲述了Winform动态加载TabControl的方法,在C#应用程序开发中具有一定的实用价值,需要的朋友可以参考下
    2014-11-11
  • C#多线程编程中导致死锁的常见陷阱和避免方法

    C#多线程编程中导致死锁的常见陷阱和避免方法

    在C#多线程编程中,死锁(Deadlock)是一种常见的、令人头疼的错误,死锁通常发生在多个线程试图获取多个资源的锁时,导致相互等待对方释放资源,最终形成一个循环依赖,造成程序无法继续执行,本文将深入探讨C#多线程编程中导致死锁的常见陷阱,并帮助你避免这些坑
    2025-02-02
  • C#代码实现短信验证码接口示例

    C#代码实现短信验证码接口示例

    这篇文章主要为大家详细介绍了C#实现短信验证码接口示例代码,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • WPF实现曲线数据展示

    WPF实现曲线数据展示

    这篇文章将以动数据分析为例为大家详细介绍wpf实现曲线数据展示与函数曲线展示的方法,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下
    2024-12-12
  • C#中值类型和引用类型的区别深度分析

    C#中值类型和引用类型的区别深度分析

    这篇文章主要介绍了C#中值类型和引用类型的区别深度分析,以通俗易懂的语言形象化的分析了C#中值类型和引用类型的区别,对于深入理解C#数据类型有着不错的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • 12306奇葩验证码引发思考之C#实现验证码程序

    12306奇葩验证码引发思考之C#实现验证码程序

    春运最高峰来了!明天通过网络将能买到小年夜的车票,本周四就将开售除夕日车票,但不少人被首次在春运期间使用的图片验证码搞得很火大,小编也正在对验证码进行研究,编写了由C#实现验证码程序,分享给大家
    2015-12-12
  • C# xmlSerializer简单用法示例

    C# xmlSerializer简单用法示例

    这篇文章主要介绍了C# xmlSerializer简单用法,结合实例形式分析了C#基于xmlSerializer操作xml的读取、输出等相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • Unity3D基于UGUI实现虚拟摇杆

    Unity3D基于UGUI实现虚拟摇杆

    这篇文章主要为大家详细介绍了Unity3D基于UGUI实现虚拟摇杆,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • unity实现UI元素跟随3D物体

    unity实现UI元素跟随3D物体

    这篇文章主要为大家详细介绍了unity实现UI元素跟随3D物体,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04

最新评论