如何匹配不同格式的时间戳
How to match timestamps of different formats
我有两个列表,其中存储了时间戳。但是两个列表中的格式不同,ListA 将其存储为 07/27/2015 18:10:14
,而 ListB 将其存储为 12:33
。我的 objective 是搜索两个列表并匹配时间戳并输出它们。对于相同的时间戳,我的意思是..
假设列表 A 和列表 B 具有以下元素...
List A: List B:
07/27/2015 18:10:14 18:11
07/29/2015 18:20:45 18:20
07/29/2015 18:20:11 19:23
07/11/2015 18:21:23 20:45
请注意,ListB 不包含秒信息,但 List A 包含。我想要以下格式的输出:
07/29/2015 18:20:45 18:20
07/29/2015 18:20:11
目前,我可以执行搜索,但我的结果中只能包含 ListA 中的一个时间戳。我想包括所有。任何帮助将不胜感激!
我试过的如下:
for (int i = 0; i < ListA.Count(); i++)
{
for (int j = 0; j < ListB.Count(); j++)
{
if (ListA[i].Substring[11,5] == ListB[j])
{
Console.WriteLine("Match Found");
}
}
}
编辑::
List A: List B:
07/27/2015 18:10:14 18:11
07/29/2015 18:20:45 20:45
07/29/2015 18:20:11 19:23
07/11/2015 18:21:23 18:20
通过将它们解析回 DateTime 对象并从每个对象中获取小时和分钟,您可以准确地比较它们
for (int i = 0; i < ListA.Count(); i++)
{
bool found = false;
for (int j = 0; j < ListB.Count(); j++)
{
DateTime aItem = DateTime.ParseExact(ListA[i], "MM/dd/yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
DateTime bItem = DateTime.ParseExact(ListB[j], "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
if (aItem.ToString("HH:mm") == bItem.ToString("HH:mm"))
{
if (!found)
{
Console.WriteLine("{0} {1}", ListA[i], ListB[j]);
found = true;
}
else
Console.WriteLine(ListA[i]);
}
}
}
编辑:抱歉,我完全误解了你的问题
我有两个列表,其中存储了时间戳。但是两个列表中的格式不同,ListA 将其存储为 07/27/2015 18:10:14
,而 ListB 将其存储为 12:33
。我的 objective 是搜索两个列表并匹配时间戳并输出它们。对于相同的时间戳,我的意思是..
假设列表 A 和列表 B 具有以下元素...
List A: List B:
07/27/2015 18:10:14 18:11
07/29/2015 18:20:45 18:20
07/29/2015 18:20:11 19:23
07/11/2015 18:21:23 20:45
请注意,ListB 不包含秒信息,但 List A 包含。我想要以下格式的输出:
07/29/2015 18:20:45 18:20
07/29/2015 18:20:11
目前,我可以执行搜索,但我的结果中只能包含 ListA 中的一个时间戳。我想包括所有。任何帮助将不胜感激!
我试过的如下:
for (int i = 0; i < ListA.Count(); i++)
{
for (int j = 0; j < ListB.Count(); j++)
{
if (ListA[i].Substring[11,5] == ListB[j])
{
Console.WriteLine("Match Found");
}
}
}
编辑::
List A: List B:
07/27/2015 18:10:14 18:11
07/29/2015 18:20:45 20:45
07/29/2015 18:20:11 19:23
07/11/2015 18:21:23 18:20
通过将它们解析回 DateTime 对象并从每个对象中获取小时和分钟,您可以准确地比较它们
for (int i = 0; i < ListA.Count(); i++)
{
bool found = false;
for (int j = 0; j < ListB.Count(); j++)
{
DateTime aItem = DateTime.ParseExact(ListA[i], "MM/dd/yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
DateTime bItem = DateTime.ParseExact(ListB[j], "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
if (aItem.ToString("HH:mm") == bItem.ToString("HH:mm"))
{
if (!found)
{
Console.WriteLine("{0} {1}", ListA[i], ListB[j]);
found = true;
}
else
Console.WriteLine(ListA[i]);
}
}
}
编辑:抱歉,我完全误解了你的问题