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();
        }

相关文章

  • c#实现断点续传功能示例分享

    c#实现断点续传功能示例分享

    这篇文章主要介绍了c#实现的断点续传功能示例,断点续传就是在上一次下载时断开的位置开始继续下载。在HTTP协议中,可以在请求报文头中加入Range段,来表示客户机希望从何处继续下载,下面是示例,需要的朋友可以参考下
    2014-03-03
  • C# 给PPT中的图表添加趋势线的方法

    C# 给PPT中的图表添加趋势线的方法

    本文内容分享通过C#程序代码给PPT文档中的图表添加数据趋势线的方法,需要的朋友可以参考下面文章的具体内容
    2021-09-09
  • WPF实现带模糊搜索的DataGrid的示例代码

    WPF实现带模糊搜索的DataGrid的示例代码

    这篇文章主要为大家详细介绍了WPF如何实现带模糊搜索的DataGrid,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下
    2023-02-02
  • C#规则引擎RulesEngine的具体使用

    C#规则引擎RulesEngine的具体使用

    这篇文章主要介绍了C#规则引擎RulesEngine的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • C#中GraphicsPath的Warp方法用法实例

    C#中GraphicsPath的Warp方法用法实例

    这篇文章主要介绍了C#中GraphicsPath的Warp方法用法,实例分析了Warp方法的相关使用技巧,需要的朋友可以参考下
    2015-06-06
  • SuperSocket封装成C#类库的步骤

    SuperSocket封装成C#类库的步骤

    这篇文章主要介绍了SuperSocket封装成C#类库的步骤,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2021-01-01
  • C#泛型与非泛型性能比较的实例

    C#泛型与非泛型性能比较的实例

    C#泛型与非泛型性能比较的实例,需要的朋友可以参考一下
    2013-04-04
  • 分享WCF文件传输实现方法---WCFFileTransfer

    分享WCF文件传输实现方法---WCFFileTransfer

    这篇文章主要介绍了分享WCF文件传输实现方法---WCFFileTransfer,需要的朋友可以参考下
    2015-11-11
  • C#实现系统托盘通知的方法

    C#实现系统托盘通知的方法

    这篇文章主要介绍了C#实现系统托盘通知的方法,涉及C#系统api调用的相关技巧,需要的朋友可以参考下
    2015-06-06
  • 详解C#中==、Equals、ReferenceEquals的区别

    详解C#中==、Equals、ReferenceEquals的区别

    C#中Equals , == , ReferenceEquals都可以用于判断两个对象的个体是不是相等,本篇文章详解C#中Equals , == , ReferenceEquals都可以用于判断两个对象的个体是不是相等,有兴趣的可以了解一下。
    2016-12-12

最新评论