这个是我初始化好的数据,都存在了StringBuffer里。大牛门只需要从sb中取出数据,然后计算下面的几种:
1.计算迟到时间跟次数?
2.计算旷工(每天打1次打算旷工)?
每天打3次卡的只用第一次的时间跟最后一次打卡的时间计算!!! public StringBuffer init()
{
StringBuffer sb = new StringBuffer();
sb.append("编号#姓名#部门#星期#打卡日期#打卡时间!");//标签栏

sb.append("00000004#佐藤英生#人事部#星期六#2011-10-08#08:21:59!");
sb.append("00000004#佐藤英生#人事部#星期六#2011-10-08#18:36:59!"); sb.append("00000004#佐藤英生#人事部#星期天#2011-10-09#08:17:59!");
sb.append("00000004#佐藤英生#人事部#星期天#2011-10-09#18:31:59!"); sb.append("00000004#佐藤英生#人事部#星期一#2011-10-11#18:12:59!");//11号为只打了一次卡 sb.append("00000004#佐藤英生#人事部#星期二#2011-10-12#08:16:59!");
sb.append("00000004#佐藤英生#人事部#星期二#2011-10-12#17:57:59!"); sb.append("00000004#佐藤英生#人事部#星期四#2011-10-14#08:10:59!");//14号打了3次卡
sb.append("00000004#佐藤英生#人事部#星期四#2011-10-14#17:40:59!");
sb.append("00000004#佐藤英生#人事部#星期四#2011-10-14#18:25:59!"); sb.append("00000004#佐藤英生#人事部#星期二#2011-10-25#08:54:59!");
sb.append("00000004#佐藤英生#人事部#星期二#2011-10-25#08:55:59!"); return sb;
}下面是我截取好的一行一行的数据: String str = sc.init().toString();
String subOver = str.substring(str.indexOf("!") + 1, str.length());
String[] strRow = subOver.split("!");

解决方案 »

  1.   

    思路有点,就是感觉不清晰,比如迟到最后显示的时候需要这样显示:迟到人条目:00000004  佐藤英生 人事部 星期二 2011-10-25 09:30:00   迟到时间:30分钟00000006   王伟    人事部 星期二 2011-10-25 09:20:00   迟到时间:20分钟00000006   刘备   人事部 星期二 2011-10-25 09:50:00   迟到时间:50分钟迟到次数:
    佐藤英生 :1次
    王伟     :1次
    刘备     :1次
    不知道截取后放到MAP里还是放到List里,是先计算还是计算好了在放入LIST?
    因为是不能存数据库的。所以只可以用集合跟别的了。大家帮忙下!
      

  2.   

    截取后放在list里吧 比如上班时间是 9点 ,取出该员工每天早上第一次的打卡时间 进行判断是否迟到 ,记录迟到的时间   你还要定一个中午的时间 比如 13点之前打卡的算迟到或是早到  ,13点之后未打卡的算矿工