字符串生成器在 foreach 循环中添加新行

本文关键字:循环 添加 新行 foreach 字符串 | 更新日期: 2023-09-27 18:33:55

我正在尝试在循环中循环访问foreach内的组名后添加一个new line。但是,它永远不会添加新行。所有内容都打印在一行中。

string [] groups = client.GetGroups(username.TrimEnd());
StringBuilder groupNames = new StringBuilder();
foreach (string groupName in groups)
{
   groupNames.Append(string.Format(groupName,Environment.NewLine));
}
Label1.Text = groupNames.ToString();

在阅读了SO中发布的几个问题后,我尝试了许多不同的解决方案,例如:

{
   groupNames.Append(groupName);
   groupNames.AppendLine();
}
Label1.Text = groupNames.ToString();    

还尝试过:

{ 
   groupNames.Append(groupName);
   groupNames.Append(System.Environment.NewLine);
}
Label1.Text = groupNames.ToString();

但是,如果在我添加的任何解决方案中的任何解决方案中:

groupNames.Append("|");
//or
groupNames.Append(",");

它会起作用。唯一不起作用的是newline.

需要注意的一件事是,我正在从Active Directory中获取用户groupNames,当groupNames返回时,它的名称中包含'。我还尝试在添加新行之前删除',也不起作用。

groupNames.Append(groupName);
groupNames.Replace(@"'", " ");
groupNames.Append(System.Environment.NewLine);

有什么建议吗?

字符串生成器在 foreach 循环中添加新行

在 html 中,新行不是'r'n而是<br>,所以你需要在每个元素后添加<br>,一个简单的string.Join应该可以正常工作:

var result = string.Join("<br>", groups);