开发者

How to convert IEnumerable<string> to one comma separated string?

开发者 https://www.devze.com 2023-04-06 06:08 出处:网络
Say that for debugging purposes, I want to quickl开发者_如何学Pythony get the contents of an IEnumerable into one-line string with each string item comma-separated. I can do it in a helper method with

Say that for debugging purposes, I want to quickl开发者_如何学Pythony get the contents of an IEnumerable into one-line string with each string item comma-separated. I can do it in a helper method with a foreach loop, but that's neither fun nor brief. Can Linq be used? Some other short-ish way?


using System;
using System.Collections.Generic;
using System.Linq;

class C
{
    public static void Main()
    {
        var a = new []{
            "First", "Second", "Third"
        };

        System.Console.Write(string.Join(",", a));

    }
}


string output = String.Join(",", yourEnumerable);

String.Join Method (String, IEnumerable

Concatenates the members of a constructed IEnumerable collection of type String, using the specified separator between each member.


collection.Aggregate("", (str, obj) => str + obj.ToString() + ",");


(a) Set up the IEnumerable:

        // In this case we are using a list. You can also use an array etc..
        List<string> items = new List<string>() { "WA01", "WA02", "WA03", "WA04", "WA01" };

(b) Join the IEnumerable Together into a string:

        // Now let us join them all together:
        string commaSeparatedString = String.Join(", ", items);

        // This is the expected result: "WA01, WA02, WA03, WA04, WA01"

(c) For Debugging Purposes:

        Console.WriteLine(commaSeparatedString);
        Console.ReadLine();


IEnumerable<string> foo = 
var result = string.Join( ",", foo );


to join large array of strings to a string, do not directly use +, use StringBuilder to iterate one by one, or String.Join in one shot.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号