加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 将每个元素的一行排列成单个字符串

发布时间:2020-12-15 06:46:15 所属栏目:百科 来源:网络整理
导读:我有一个类型为List string []我将转换为一个字符串与换行符上的每个字符串[].我使用以下LINQ查询来平滑列表,但是我不知道如何在每个字符串[]之间添加一行,而不会将查询扩展到更丑陋的内容中.有没有办法做到这一点,没有内向我的查询,并使用String.Join或IEnu
我有一个类型为List< string []>我将转换为一个字符串与换行符上的每个字符串[].我使用以下LINQ查询来平滑列表,但是我不知道如何在每个字符串[]之间添加一行,而不会将查询扩展到更丑陋的内容中.有没有办法做到这一点,没有内向我的查询,并使用String.Join或IEnumberable.Aggregate内部的foreach循环?
results.SelectMany(x => x).Aggregate((c,n) => c + "," + n)

解决方法

String.Join(Environment.NewLine,results.Select(a => String.Join(",",a)));

完整样品:

var results = new List<string[]> {
    new[]{"this","should","be","on"},new[]{"other","line"}
};

var result = String.Join(Environment.NewLine,a)));

结果:

this,should,be,on
other,line

UPDATE这里是完成的聚合 – 它使用StringBuilder在内存中构建单个字符串

results.Aggregate(new StringBuilder(),(sb,a) => sb.AppendLine(String.Join(",a)),sb => sb.ToString());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读