使用C#将对象数组列表转换为csv字符串

时间:2016-12-15 07:47:13

标签: c# csv salesforce bulkupdate

我有一个对象Person类型的列表。我需要将其转换为csv字符串,以便进一步处理。我到现在所做的是:

覆盖toString方法如下:

public override string ToString()
  {
   return String.Format("{0}, {1}, {2}, {3}", userame, firstname, lastname, marks);
  }

示例实施:

string csv = String.Join(",", detailList.Select(x => x.ToString()).ToArray());
System.Diagnostics.Debug.WriteLine("csv  " + csv);

这不是我所知道的有效格式。任何人都可以帮助我转换成适当的csv fromat吗?

我需要在salesforce Bulk API中使用此csv。

UPDT:我想要的输出是 -

名字,姓氏,用户名

“汤姆”, “琼斯”, “Tom1234”

“杰克”, “史密斯”, “Jack123”

由于

2 个答案:

答案 0 :(得分:0)

String.Join(",", detailList.Select(x => x.ToString()).ToArray());

答案 1 :(得分:0)

参见工作示例:https://dotnetfiddle.net/KJVYqC

public class CsvFormatter
{
    public string Format(IEnumerable<Person> persons)
    {
        var sb = new StringBuilder();

        sb.AppendLine("FirstName,LastName,Username");

        foreach(var person in persons)
        {
            sb.Append(person.Firstname + ",");
            sb.Append(person.Lastname + ",");   
            sb.Append(person.Username);

            sb.AppendLine();
        }

        return sb.ToString().Trim();
    }
}