我有一个字符串列表...
var strings = new List<String>() { "a", "b", "c" };
我想以不同的格式输出它们,像这样:
'a','b','c'
我试过了:
string.Join("','",strings );
和
String.Join(",", String.Format("'{0}'",strings )
最佳答案
您的第一次尝试应该可行,但您需要在整体结果前添加前缀和后缀 "'"
。
或者,你可以这样做:
var strings = new List<string>() { "a", "b", "c" }
.Select(x => string.Format("'{0}'", x));
var result = string.Join(",", strings);
另一种选择是使用 StringBuilder
,
var strings = new List<string>() { "a", "b", "c" };
var builder = new StringBuilder();
foreach (var s in strings)
{
builder.AppendFormat(",'{0}'", s);
}
var result = builder.ToString().Trim(",");
在这种情况下,我推荐使用 LINQ 方法,因为它很简单,但如果您的实际问题更复杂,请不要排除 StringBuilder
,因为它可以显示格式化的意图每个项目都更干净。
使用 StringBuilder
格式化每个项目的内容,然后使用 LINQ 构建以逗号分隔的列表的混合方法可能会很有效。
关于c# - 重新格式化字符串以逗号分隔和格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38404988/