基本上我正在使用如下的string.join。
string Combinestr = string.Join("", newListing+"\n"+"Total Found");
但是,我不想在newListing中附加最后一行。 newListing是一个HashSet,这是我加入所有字符串之后需要做一个trimend的情况吗?如果是这样,我将如何对整个字符串“\ nTotal Found”进行修改?
答案 0 :(得分:8)
您希望该字符串出现在HashSet中的项目之间。
这就是第一个参数:
string Combinestr = string.Join("\nTotal Found", newListing);
答案 1 :(得分:1)
首先是你的字符串。加入是毫无意义的。您已使用+运算符加入字符串。你应该这样......
string Combinestr = string.Join("", newListing, "\n", "Total Found");
但是,我个人会这么做......
string Conbinestr = newListing.ToString() + "\nTotal Found";
并完成它。
如果你不想要has set中的最后一项,那么我会循环哈希集并使用字符串构建器......
System.Text.StringBuilder sb = new System.Text.StringBuilder();
foreach(var hash in newListing.Take(newListing.Count - 1)){
sb.Append(hash.ToString());
}
sb.Append("\nTotal Found");
string Conbinestr = sb.ToString();
...总的来说,你正在尝试做什么似乎不太正确
答案 2 :(得分:0)
实际上我反过来通常把'\ n'放在前面。在这种情况下,您只需要确保第一项没有附加:
if (!String.IsNullOrEmpty(newListing))
{
newListing += "\n";
}
newListing += "Total Found";
答案 3 :(得分:0)
替代@SLaks解决方案:
int lastIndex = Combinestr.LastIndexOf("\n");
if (lastIndex > -1)
{
Combinestr = Combinestr.Substring(0, lastIndex);
}