代码之家  ›  专栏  ›  技术社区  ›  Oundless

将字符串数组转换为C中的连接字符串#

  •  38
  • Oundless  · 技术社区  · 15 年前

    有没有一种简单的方法可以将字符串数组转换为连接字符串?

    例如,我有一个字符串数组:

    new string[]{"Apples", "Bananas", "Cherries"};
    

    我想得到一个字符串:

    "Apples,Bananas,Cherries"
    

    "Apples&Bananas&Cherries" "Apples\Bananas\Cherries"

    4 回复  |  直到 6 年前
        1
  •  71
  •   Marc Gravell    15 年前

    一个简单的…

    string[] theArray = new string[]{"Apples", "Bananas", "Cherries"};
    string s = string.Join(",",theArray);
    
        2
  •  10
  •   Guffa    15 年前

    最明显的选择当然是string.join方法。

    以下是Linqy的替代方案:

    string.Concat(fruit.Select((s, i) => (i == 0 ? "" : ",") + s).ToArray())
    

    (与连接方法一样,它并不真正有用,但可能用于扩展方法无法进行的地方,如交替分隔符…)

        3
  •  9
  •   rahul    15 年前
        4
  •  1
  •   Vivek Nuna Chetan sabhaya    8 年前

    你可以使用 Aggregate ,它对序列应用累加器函数。

    string[] test = new string[]{"Apples", "Bananas", "Cherries"};
    char delemeter = ',';
    string joinedString = test.Aggregate((prev, current) => prev + delemeter + current);