Ejemplo n.º 1
0
            /// <summary>
            ///
            /// </summary>
            /// <param name="input"></param>
            /// <param name="sep1"></param>
            /// <param name="sep2"></param>
            /// <param name="pos1"></param>
            /// <param name="flag"></param>
            /// <param name="pos2"></param>
            /// <returns></returns>
            public static string getItem(string input, string sep1, string sep2, int pos1, string flag, int pos2)
            {
                //例如: 串 1,aa;2,bb 由一级分隔符";" 分成两段, 每段又由二级分隔符"," 分开, 第一个参数sIn 是整个字串,
                //sep1 指一级分隔符,sep2是二级分隔符.    如果对于这个串, 想查找子串中, 第1 个位置是2 时, 第二个位置的值,
                //即, pos1 为0, flag为"2", pos2 为1, 函数返回"bb"

                string[] arr;
                string[] arrb;
                arr = StringTool.MSplit(input, sep1);

                foreach (string st in arr)
                {
                    arrb = StringTool.MSplit(st, sep2);
                    if (pos1 >= arrb.Length || pos2 >= arrb.Length)
                    {
                        return("");
                    }
                    for (int i = 0; i < arrb.Length; i++)
                    {
                        if (arrb[pos1] == flag)
                        {
                            return(arrb[pos2]);
                        }
                    }
                }

                return("");
            }
Ejemplo n.º 2
0
            }    //end class mTableRow



            //************************************************************



            /// <summary>
            /// 静态方法, 获取一个带分隔符的字串的指定段的值.第三个参数从0开始计数.
            /// 如:getItem("1,2,3",",",1)=="2"
            /// </summary>
            /// <param name="input"></param>
            /// <param name="sep">"分隔符"</param>
            /// <param name="pos">从0开始计数的位置</param>
            /// <returns></returns>
            public static string getItem(string input, string seperator, int pos)
            {
                string[] arr = StringTool.MSplit(input, seperator);

                if (pos >= arr.Length || pos < 0)
                {
                    return("");
                }
                else
                {
                    return(arr[pos]);
                }
            }
Ejemplo n.º 3
0
            public static string getItem(string input, string sep1, string sep2, int row, int pos)
            {
                if (input == "")
                {
                    return("");
                }

                string[] arr = StringTool.MSplit(input, sep1);

                if (row >= arr.Length)
                {
                    return("");
                }

                string[] arrb = StringTool.MSplit(arr[row], sep2);

                if (pos >= arrb.Length)
                {
                    return("");
                }

                return(arrb[pos]);
            }
Ejemplo n.º 4
0
            /// <summary>
            /// 从指定字符串构造表
            /// </summary>
            /// <param name="val"></param>
            public void FromString(string val)
            {
                if (val.Trim() == "")
                {
                    iRow  = 0;
                    iClm  = 0;
                    oRows = new MTableRow[0];
                    return;
                }


                string[] arrRow = StringTool.MSplit(val, ";");

                int iTemp = 0;

                for (int i = 0; i < arrRow.Length; i++)
                {
                    if (i == 0)
                    {
                        iTemp = StringTool.MSplit(arrRow[i], ",").Length;
                    }
                    else if (StringTool.MSplit(arrRow[i], ",").Length != iTemp)
                    {
                        throw new Exception("Argument is not valid");
                    }
                }

                iClm = iTemp;
                iRow = arrRow.Length;

                oRows = new MTableRow[iRow];
                for (int i = 0; i < iRow; i++)
                {
                    oRows[i] = new MTableRow(arrRow[i]);
                }
            }
Ejemplo n.º 5
0
 /// <summary>
 /// 从字串构造行
 /// </summary>
 /// <param name="str"></param>
 public void FromString(string str)
 {
     arrItem = StringTool.MSplit(str, ",");
 }
Ejemplo n.º 6
0
 /// <summary>
 /// 从字符串构造一行
 /// </summary>
 /// <param name="str"></param>
 public MTableRow(string str)
 {
     arrItem = StringTool.MSplit(str, ",");
 }