创建 CSV 的典型方法字符串(伪代码):
- 创建 CSV 容器对象(类似于 C# 中的 StringBuilder)。
- 遍历要添加的字符串,在每个字符串后附加一个逗号。
- 在循环之后,删除最后一个多余的逗号。
代码示例:
public string ReturnAsCSV(ContactList contactList)
{
StringBuilder sb = new StringBuilder();
foreach (Contact c in contactList)
{
sb.Append(c.Name + ",");
}
sb.Remove(sb.Length - 1, 1);
//sb.Replace(",", "", sb.Length - 1, 1)
return sb.ToString();
}
我喜欢通过检查容器是否为空来添加逗号的想法,但这是否意味着需要进行更多处理,因为它需要在每次出现时检查字符串的长度?
我觉得应该有一种更简单/更清晰/更有效的方法来删除最后一个逗号。有什么想法吗?
最佳答案
你可以使用 LINQ to Objects :
string [] strings = contactList.Select(c => c.Name).ToArray();
string csv = string.Join(",", strings);
显然,这一切都可以在一行中完成,但在两行中会更清楚一些。
关于c# - CSV 字符串处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4432/