我有这样的字符串:
string mystring = "123456"
我想将两分之二为12 34 56。
伪代码:
var list = new List<int>();
foreach(var e in something){
string mystring ="123456";
var split = ...
// convert the splitted string
list.Add(convertedString);
}
我该怎么做?
答案 0 :(得分:1)
另一种可能会更容易理解的方式
public static IEnumerable<int> SplitInts(this string source)
{
for (var i = 0; i < source.Length; i += 2)
yield return int.Parse(source.Substring(i, Math.Min(2, source.Length - i)));
}
用法
var test = "23456";
foreach (var item in test.SplitInts())
Console.WriteLine(item);
输出
23
45
6
答案 1 :(得分:0)
您可以尝试一下,
var str = "123456";
var intList = Enumerable.Range(0, str.Length / 2)
.Select(i => Convert.ToInt32( string.Concat(str.Skip(i * 2).Take(2)))).ToList();
如果您在控制台上记录结果:
foreach(var e in intList)
{
Console.WriteLine(e);
}
Output list will contain elements like `12, 34, 56 respectively.`