zoukankan      html  css  js  c++  java
  • c#模拟js escape方法(转)

    实现URI字符串转化成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();
            }
    原地址:http://www.cnblogs.com/meceky/archive/2013/11/27/3445245.html
  • 相关阅读:
    [置顶] 某大型银行深化系统技术方案之一:实现技术定义
    android代码实现关机
    一个IP每天只弹一次广告窗口
    bootstrap框架开发电子商城案例
    HDU 1203 I NEED A OFFER!(dp)
    STL algorithmi算法s_sorted和is_sorted_until(28)
    计数排序(C语言版本)
    4.事务提交过程,交易的基本概念,Oracle交易周期,保存点savepoint,数据库的隔离级别
    《python源代码分析》笔记 pythonVM一般表达式
    ASP.NET——两个下拉框来实现动态联动
  • 原文地址:https://www.cnblogs.com/ManchesterUnitedFootballClub/p/4579596.html
Copyright © 2011-2022 走看看