string rowText = dt.Rows[0]["PO"].ToString();
                if (rowText.Length > 17 && rowText.Length <= 35)
                {
                    row["PONO"] = rowText.Substring(0, 17) + "<br />" + rowText.Substring(18, rowText.Length - 18);
                }
                else if (rowText.Length > 35 && rowText.Length <= 53)
                {
                    row["PONO"] = rowText.Substring(0, 17) + "<br />" + rowText.Substring(18, 17) + "<br />" + rowText.Substring(36, rowText.Length - 36);
                }
                else if (rowText.Length > 53 && rowText.Length <= 71)
                {
                    row["PONO"] = rowText.Substring(0, 17) + "<br />" + rowText.Substring(18, 17) + "<br />" + rowText.Substring(36, 17) + "<br />" + rowText.Substring(54, rowText.Length - 54);
                }
                else if (rowText.Length > 71 && rowText.Length <= 89)
                {
                    row["PONO"] = rowText.Substring(0, 17) + "<br />" + rowText.Substring(18, 17) + "<br />" + rowText.Substring(36, 17) + "<br />" + rowText.Substring(54, 17) + "<br />" + rowText.Substring(72, rowText.Length - 72);
                }
                else if (rowText.Length > 89 && rowText.Length <= 107)
                {
                    row["PONO"] = rowText.Substring(0, 17) + "<br />" + rowText.Substring(18, 17) + "<br />" + rowText.Substring(36, 17) + "<br />" + rowText.Substring(54, 17) + "<br />" + rowText.Substring(72, 17) + "<br />" + rowText.Substring(90, rowText.Length - 90);
                }
                else
                {
                    row["PONO"] = rowText;
                }原始数据
88906816,88906551,88906706,88906574,88906670,88906800,88906870,88906520,88906513,88906545
代码运行后的数据
88906816,88906551
88906706,88906574
88906670,88906800
88906870,88906520
88906513,88906545代码主要实现将原来的数据每行输出2个然后换行,但是以上代码只能实现12个以内的换行,多余12个的话我又得加入判断
这个代码有个缺点,由于我并不知道原始数据会有多少个,所以我只能在发现最多的一个数据后,在手动写一个新的判断来换行。
比如上面代码现在只能实现12个号的换行,如果发现一个16个的原始数据,我又得继续往下写判断,这样会使代码越来越多。
有没有办法改变一下,不管多少个号,总是每两个一行
多谢了

解决方案 »

  1.   


     string rowText = "";
            string[] strs = dt.Rows[0]["PO"].ToString().Split(',');
            for (int i = 0; i < strs.Length; i++)
            {
                rowText += strs;
                if (strs.Length == (i + 1))
                {            }
                else if (i % 2 == 0)
                {
                    rowText += ",";
                }
                else
                {
                    rowText += "<br />";
                }
            }
      

  2.   

    rowText += strs[i]
    好像加了索引后就好了