//,bool IsUrlEncode,string UrlEncode
        private List<string> getListUrl(string dicPre)
        {
            List<string> list_Para=new List<string>();
            Regex re;
            MatchCollection aa;
            int step;
            int startI;
            int endI;
            int i = 0;

            switch (dicPre.Substring(0, dicPre.IndexOf(":")))
            {

                case "Num":

                    re = new Regex("([\\-\\d]+)", RegexOptions.IgnoreCase | RegexOptions.Multiline);
                    aa = re.Matches(dicPre);

                    startI = int.Parse(aa[0].Groups[0].Value.ToString());
                    endI = int.Parse(aa[1].Groups[0].Value.ToString());
                    step = int.Parse(aa[2].Groups[0].Value.ToString());

                    if (step > 0)
                    {
                        for (i = startI; i <= endI; i = i + step)
                        {
                            list_Para.Add(i.ToString());
                        }
                    }
                    else
                    {
                        for (i = startI; i >= endI; i = i + step)
                        {
                            list_Para.Add(i.ToString());
                        }
                    }

                    break;

                case "Letter":
                    startI =getAsc( dicPre.Substring(dicPre.IndexOf(":") + 1, 1));
                    endI  =getAsc( dicPre.Substring(dicPre.IndexOf(",") + 1, 1));

                    if (startI > endI)
                    {
                        step = -1;
                    }
                    else
                    {
                        step = 1;
                    }

                    for (i = startI; i <= endI; i = i + step)
                    {
                        char s;
                        s = Convert.ToChar(i);
                        list_Para.Add(s.ToString ());
                    }

                    break;
                case "Dict":
                    cDict d = new cDict();
                    string tClass = dicPre.Substring(dicPre.IndexOf(":") + 1, dicPre.Length - dicPre.IndexOf(":") - 1);
                    DataView dName = d.GetDict(tClass);

                    //�ڴ˲�����url�������봦����
                    //if (IsUrlEncode == true)
                    //{
                    //    for (i = 0; i < dName.Count; i++)
                    //    {
                    //        switch ((cGlobalParas.WebCode)(int.Parse(UrlEncode)))
                    //        {
                    //            case cGlobalParas.WebCode.utf8 :
                    //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.UTF8));
                    //                break;
                    //            case cGlobalParas.WebCode.gb2312 :
                    //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.GetEncoding("gb2312")));
                    //                break;
                    //            case cGlobalParas.WebCode.gbk :
                    //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.GetEncoding("gbk")));
                    //                break;
                    //            case cGlobalParas.WebCode .big5 :
                    //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.GetEncoding("big5")));
                    //                break;
                    //            default :
                    //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.UTF8));
                    //                break;
                    //        }

                    //    }
                    //}
                    //else
                    //{
                        for (i = 0; i < dName.Count; i++)
                        {
                            list_Para.Add(dName[i].Row["Name"].ToString());
                        }
                    //}

                    break;
                default:
                    list_Para = null;
                    break;
            }

            return list_Para;
        }
示例#2
0
        private List <string> getListUrl(string dicPre)//,bool IsUrlEncode,string UrlEncode
        {
            List <string>   list_Para = new List <string>();
            Regex           re;
            MatchCollection aa;
            int             step;
            int             startI;
            int             endI;
            int             i = 0;

            switch (dicPre.Substring(0, dicPre.IndexOf(":")))
            {
            case "Num":

                re = new Regex("([\\-\\d]+)", RegexOptions.IgnoreCase | RegexOptions.Multiline);
                aa = re.Matches(dicPre);

                startI = int.Parse(aa[0].Groups[0].Value.ToString());
                endI   = int.Parse(aa[1].Groups[0].Value.ToString());
                step   = int.Parse(aa[2].Groups[0].Value.ToString());

                if (step > 0)
                {
                    for (i = startI; i <= endI; i = i + step)
                    {
                        list_Para.Add(i.ToString());
                    }
                }
                else
                {
                    for (i = startI; i >= endI; i = i + step)
                    {
                        list_Para.Add(i.ToString());
                    }
                }



                break;

            case "Letter":
                startI = getAsc(dicPre.Substring(dicPre.IndexOf(":") + 1, 1));
                endI   = getAsc(dicPre.Substring(dicPre.IndexOf(",") + 1, 1));

                if (startI > endI)
                {
                    step = -1;
                }
                else
                {
                    step = 1;
                }

                for (i = startI; i <= endI; i = i + step)
                {
                    char s;
                    s = Convert.ToChar(i);
                    list_Para.Add(s.ToString());
                }

                break;

            case "Dict":
                cDict    d      = new cDict();
                string   tClass = dicPre.Substring(dicPre.IndexOf(":") + 1, dicPre.Length - dicPre.IndexOf(":") - 1);
                DataView dName  = d.GetDict(tClass);

                //在此不进行url参数编码处理了
                //if (IsUrlEncode == true)
                //{
                //    for (i = 0; i < dName.Count; i++)
                //    {
                //        switch ((cGlobalParas.WebCode)(int.Parse(UrlEncode)))
                //        {
                //            case cGlobalParas.WebCode.utf8 :
                //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.UTF8));
                //                break;
                //            case cGlobalParas.WebCode.gb2312 :
                //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.GetEncoding("gb2312")));
                //                break;
                //            case cGlobalParas.WebCode.gbk :
                //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.GetEncoding("gbk")));
                //                break;
                //            case cGlobalParas.WebCode .big5 :
                //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.GetEncoding("big5")));
                //                break;
                //            default :
                //                list_Para.Add(HttpUtility.UrlEncode(dName[i].Row["Name"].ToString(), Encoding.UTF8));
                //                break;
                //        }


                //    }
                //}
                //else
                //{
                for (i = 0; i < dName.Count; i++)
                {
                    list_Para.Add(dName[i].Row["Name"].ToString());
                }
                //}

                break;

            default:
                list_Para = null;
                break;
            }

            return(list_Para);
        }