【问题标题】:Formatting List into string将列表格式化为字符串
【发布时间】:2013-07-24 16:25:51
【问题描述】:

所以我的代码有点问题,如何将我的列表转换为这种格式的普通字符串

listitem1, listitem2, listitem3

请注意,最后一个 listitem3 末尾没有 ,。

我尝试了 String.Inser 但我无法获得最后一个索引..

【问题讨论】:

    标签: c# string list


    【解决方案1】:

    听起来你需要string.Join

    var result = string.Join(", ", yourList);
    

    【讨论】:

    • 关于有争议的编辑:在 .NET 版本 4.0(不是 4.5)之前,您必须调用 ToArray() 才能达到当时存在的 Join 的过载。
    【解决方案2】:

    使用连接,将您的数组与您定义的分隔符连接起来。 同样使用拆分将您的定界弹簧变成一个数组。

    var list = new List<string> {"one", "two", "three"};
    
    var stringList = string.Join(", ", list);
    

    结果是

    一二三

    如果您想要空格,请确保将其包含在分隔符", "

    【讨论】:

      【解决方案3】:

      或者您可以使用 foreach 循环来获取最后一个项目,然后基于该附加一个逗号:

      List<string> mylist = new List<string>();
      mylist.Add("Test1");
      mylist.Add("Test2");
      mylist.Add("Test3");
      
      string lastItem = mylist[mylist.Count - 1];
      foreach(string s in mylist)
      {
          if (s != lastItem)
          Console.Write(s + ", ");
          else
          Console.Write(s);
      }
      

      结果是:

      Test1, Test2, Test3
      

      【讨论】:

      • 你没有说sw 是什么(编辑:我看到你改变了你的答案。)。请注意,如果某些中间列表项等于最后一项,则它们不会得到逗号。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-17
      • 1970-01-01
      相关资源
      最近更新 更多