C# 实现和java的UrlCode的结果

   /// <summary>
        /// javaUrl编码
        /// </summary>
        /// <returns></returns>
        public static string UrlEncodeJava(string str)
        {
            try
            {
                if (string.IsNullOrEmpty(str)) return str;
                var sb = new StringBuilder();
                for (int i = 0; i < str.Length; i++)
                {
                    var v = str[i].ToString();
                    if (!isText(v))
                    {
                        sb.Append(HttpUtility.UrlEncode(v).ToUpper());

                    }
                    else
                    {
                        sb.Append(v);
                    }


                }
                return sb.ToString();
            }
            catch (Exception)
            {

                return HttpUtility.UrlEncode(str);
            }

        }

        static bool isText(string argValue)
        {
            try
            {

                return Regex.IsMatch(argValue, "[A-Z]") || Regex.IsMatch(argValue, "[0-9]") ||
                       Regex.IsMatch(argValue, "[a-z]");

            }
            catch (Exception)
            {

                return false;
            }


        }

posted @ 2018-06-13 11:01  change_4_now  阅读(151)  评论(0编辑  收藏  举报