iCalendar RFC 2445

รูปแบบการเกิดซ้ำในโลกจริง

รูปแบบการเกิดซ้ำอธิบายกฎเมื่อเหตุการณ์เกิดขึ้น เครื่องยนต์รูปแบบการเกิดซ้ำเช่น Aspose iCalendar จำเป็นต้องคำนวณวันที่และเวลาของเหตุการณ์ตามรูปแบบการเกิดซ้ำที่กำหนด เราพบการจัดตารางหรือรูปแบบการเกิดซ้ำในหลายสถานการณ์ ตัวอย่างเช่น:

  • การประชุมทีมสิบครั้ง ทุกวันจันทร์ เวลา 10:00 น.
  • ดำเนินการชำระเงินเดือนในวันทำงานสุดท้ายของทุกเดือน
  • ตรวจอุณหภูมิผู้ป่วยทุกวันเป็นเวลาสองสัปดาห์
  • ไปออกกำลังกายที่โรงยิมวันจันทร์ พุธ และศุกร์
  • ทำการสำรองข้อมูลทุก 4 ชั่วโมงในวันทำงาน
  • สร้างรายงานการขายบน …
  • อัปเดตสถิติเว็บไซต์ทุก … เหตุการณ์ที่เกิดเป็นคาบส่วนใหญ่สามารถแสดงเป็นรูปแบบการเกิดซ้ำ ตัวอย่างเช่น โค้ดต่อไปนี้จะคืนแาร์เรย์ที่มีเหตุการณ์เกิดซ้ำสิบครั้งของตัวอย่างการประชุมทีมก่อนหน้า:
CalendarRecurrence recurrencePattern = new CalendarRecurrence("DTSTART:20040301T100000\nRRULE:FREQ=WEEKLY;COUNT=10;BYDAY=MO");
DateCollection expectedDates = recurrencePattern.generateOccurrences();
System.out.println("expectedDates.Count = " + expectedDates.size());
for (int i = 0; i < expectedDates.size(); i++) {
    System.out.println("DateTime = " + sdf.format(expectedDates.getItem(i)));
}