2017-08-21 33 views
-4

我有一个字符串"[2030,2031,2032,2033,2034]",我想将它转换成一个数组。C# - 字符串到数组

我已经尝试过这样的:

Array t = teamMembers.Select(c => c.ToString()).ToArray(); 

但它只是把所有的字符的字符串。

我该怎么做?

+8

删除'',''''上的'['和']','.Split''(然后如果你想要整数,那么'Int32.Parse')? – crashmstr

+0

使用[String.Split](https://msdn.microsoft.com/en-us/library/system.string.split(v = vs.110).aspx)方法。使用逗号和方括号作为分隔符。 –

+0

也想要注意,这看起来像一个JSON数组。如果是这样,他可能应该使用Json.Net。 – Dispersia

回答

3

如果你想串...

var t = teamMembers.Trim('[', ']').Split(','); 

如果你想整数...

var ret = teamMembers.Trim('[', ']').Split(',').Select(int.Parse).ToArray(); 
0
var input = "[2030,2031,2032,2033,2034]"; 
var output = input.Replace("[", string.Empty).Replace("]", string.Empty).Split(','); 
0

就分割字符串,它会被转换为阵列。

var teamMembers ="[2030,2031,2032,2033,2034]"; 

    var t = teamMembers.Trim('[', ']').Split(','); 

https://dotnetfiddle.net/hsMrDh

另一种方式是

 var t1 = teamMembers.Replace("[","").Replace("]","").Split(','); 
2

你可以用很多方法,你可以先修剪或其他建议,或使用String.Split超载,这需要char[],可以去除空的条目,让你完全想要什么。如果您想要int阵列,则可以将其解析为int

var intArray = teamMembers 
        .Split(new[] { '[', ']', ',' }, StringSplitOptions.RemoveEmptyEntries) 
        .Select(int.Parse); 
0

只是删除 “[]” 使用以下代码 teamMembers.Trim( '[', ']'); 并用“,”分隔符 teamMembers.Trim('[',']')。split(',');