日期:2014-05-17 浏览次数:21157 次
string[] array = { "1022012061513585300A21950001", "1032012061609083100A21950001", "1032012061609083800A21950001" };
SortedList<string, Tuple> slist = new SortedList<string, Tuple>();
foreach (var item in array)
{
string key = item.Substring(19, 6) + item.Substring(3, 12);
string clock = item.Substring(0, 3);
int second = int.Parse(item.Substring(15, 2));
Tuple tuple;
if (slist.TryGetValue(key, out tuple))
{
if (tuple.second < second)
{
tuple.clock = clock;
tuple.second = second;
}
}
else
{
tuple = new Tuple { clock = clock, second = second };
slist.Add(key, tuple);
}
}
string[] result = new string[slist.Count];
for (int i = 0; i < slist.Count; i++)
{
string key = slist.Keys[i];
Tuple tuple = slist.Values[i];
result[i] = string.Concat(tuple.clock, key.Substring(6), tuple.second.ToString("D2"), "00", key.Substring(0, 6), "001");
}