首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取最新记录

获取最新记录
EN

Stack Overflow用户
提问于 2011-04-15 15:42:52
回答 1查看 121关注 0票数 0

我有一个Xml文件中的记录列表,其中每个记录作为其日期的creation.Can请您建议我一个有效的方法来获得最新的两个记录。

Xml文件的示教方法如下:

代码语言:javascript
复制
<Records>
    <Record>
        <RecordID>1<RecordID>
        <CreationDate>Apr 01, 2011 10:15 <CreationDate>
   <Record>
   <Record>
        <RecordID>2<RecordID>
        <CreationDate>Jan 12, 2011 10:15<CreationDate>
   <Record>
   <Record>
       <RecordID>3<RecordID>
       <CreationDate>Feb 12, 2011 09:00<CreationDate>
   <Record>
         .
         .
         .
         .
   many such records...
<Records>

我会把所有这些xml放到一个列表中,但是你能告诉我从列表中提取最新两条记录的有效方法吗?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2011-04-15 18:17:38

您需要将创建日期存储为DateTime对象,而不是字符串。在Record类中实现一个比较方法,用于比较创建日期。然后,如果您将记录存储在列表中,您应该能够对其进行排序。在下面的例子中,最新的记录将在最后,所以如果你想要它们,只需颠倒列表即可。

代码语言:javascript
复制
List<Records> recordList = parseXml(); // populate your list
recordList.Sort(new Comparison<Record>(Record.Comparison)); // sort in creation date ascending order
recordList.Revers(); // reverse the elements in the list

Record[] the2latest = new Record[2]{recordList[0], recordList[1]};

public partial class Record
{
   public static int Comparison(Record r1, Record r2)
    {
        return DateTime.Compare(r1.creationDate, r2.creationDate);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5673774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档