Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将列表转换为格式化字符串_C#_Asp.net - Fatal编程技术网

C# 将列表转换为格式化字符串

C# 将列表转换为格式化字符串,c#,asp.net,C#,Asp.net,我有一个很简单的问题,但似乎无法解决。我已经创建了一个字符串列表。但是我想将列表格式化为一个看起来像数组的字符串 例如,这是我的清单 List<string> testData = new List<string> (); testData.Add("test 1"); testData.Add("test 2"); 我试着用一个字符串。Join,但是没有得到我想要的结果 我试着用一个string.Join,但是没有得到我想要的结果 没错。但是,字符串格式有助于: va

我有一个很简单的问题,但似乎无法解决。我已经创建了一个字符串列表。但是我想将列表格式化为一个看起来像数组的字符串

例如,这是我的清单

List<string> testData = new List<string> ();
testData.Add("test 1");
testData.Add("test 2");
我试着用一个字符串。Join,但是没有得到我想要的结果

我试着用一个string.Join,但是没有得到我想要的结果

没错。但是,字符串格式有助于:

var res = "[" + string.Join(", ", testData.Select(s => $"'{s}'")) + "]";
在C#6之前,您需要明确使用
string.Format

var res = "[" + string.Join(", ", testData.Select(s => string.Format("'{0}'", s))) + "]";

引号必须是单引号吗?如果没有,您可以查看JSON.NET。我将使用一个自定义类,该类继承
列表
,然后重写ToString方法Yes single Quotes或一个自定义扩展方法,该方法将创建您需要的字符串您忘记关闭外圆括号,不再需要添加.ToArray()。它在没有ToArray()扩展的情况下工作。这很奇怪,我发现:无法使用.NET Framework 4.0将“System.Collections.Generic.IEnumerable”转换为“string[]”,Join接受IEnumerable作为参数。
var res = "[" + string.Join(", ", testData.Select(s => string.Format("'{0}'", s))) + "]";
var result = "[" + String.Join(", ", testData.Select(c => "'" + c + "'")) + "]";
string result = "[" + string.Join(",", testData.Select(i => "'" + i + "'").ToArray()) + "]";