foreach语句(获取字符串值)

时间:2010-06-14 09:14:18

标签: c# asp.net

有人可以帮帮我吗?我分割字符串的代码工作正常,我仍然需要使用分割字符串我的页面。我怎样才能实现这一目标?这是我目前的代码

    private void SplitStrings()
    {
        List<string> listvalues = new List<string>();
        listvalues = (List<string>)Session["mylist"];
        string[] strvalues = listvalues.ToArray();

        if (listvalues != null)
        {
            foreach (string strElement in listvalues)
            { 
                string[] prods = strElement.ToString().Split("|".ToCharArray());
                string prodName = prods[0].ToString();
                Response.Write(prodName);
            }
        }
    }

link text

如何用任何标签或文字替换response.write?当我试图在代码上使用文字时,它会显示一个字符串,而不是所有已被分割的字符串。

任何想法?

3 个答案:

答案 0 :(得分:0)

不是仅仅分配值而是使用连接运算符来获取所有字符串。如果您的标签名称是label1,那么

label1.Text += prods[0].ToString(); 

就够了。

答案 1 :(得分:0)

如果您只在标签中看到一个prodName,那么当您分配标签的值时,它听起来像是在做这样的事情:

label1.text = prodName

这只会将label1的值设置为prodName。实际上,您需要对标签进行连接并执行与此类似的操作:

label1.text += prodName

这基本上是说,取label1的值并添加prodName到最后。第一个声明是说取label1的值并将其设置为prodName

答案 2 :(得分:0)

只需循环遍历字符串数组:

foreach(string s in prods)
{
  response.write(s);
}

BTW strElement.ToString().Split("|".ToCharArray());

可以替换为此strElement.Split('|');

因为strElement已经是一个字符串,并且要指定一个char,你必须使用单引号。