0

I am trying to get the events from the native calendar for a date given by user,i am not able to get the events date specific.How can i do this ?

  private void getEvents() {
          try {

             EventList eventList = (EventList)PIM.getInstance().openPIMList(PIM.EVENT_LIST, PIM.READ_ONLY);
             Enumeration events = eventList.items();
              while (events.hasMoreElements()) {
               Event event = (Event)events.nextElement();

               if(eventList.isSupportedField(Event.LOCATION) && event.countValues(Event.LOCATION) > 0) {
                    String location = event.getString(Event.LOCATION, 0); 
                    Dialog.alert(location);
               }
                if(eventList.isSupportedField(Event.SUMMARY) && event.countValues(Event.SUMMARY) > 0) {
                    String subject = event.getString(Event.SUMMARY, 0); 
                    Dialog.alert(subject);
               }
               if(eventList.isSupportedField(Event.START) && event.countValues(Event.START) > 0) {
                    long start = event.getDate(Event.START,0); 
                    SimpleDateFormat sdf = new SimpleDateFormat("MMM dd, yyyy HH:mm");
                    String dateString = sdf.formatLocal(start);
                    Dialog.alert(dateString);

               }
                 if(eventList.isSupportedField(Event.END)&& event.countValues(Event.END) > 0) {
                    long end = event.getDate(Event.END, 0); 
                    SimpleDateFormat sdf = new SimpleDateFormat("MMM dd, yyyy HH:mm");
                    String dateString = sdf.formatLocal(end);
                    Dialog.alert(dateString);
               }

           }

           }
           catch (PIMException e) {
               Dialog.alert(e.getMessage());
            }

        }

how to modify this code to be displayed for the given date ?

user1195292
  • 233
  • 1
  • 3
  • 13

1 Answers1

2

How about:

Calendar cal = Calendar.getInstance();
cal.setTimeMillis(start);
if (cal.get(Calendar.YEAR) == requestedYear && cal.get(Calendar.MONTH) == requestedMonth && cal.get(Calendar.DAY) == requestedDay) {
  // display event
}
Richard
  • 8,920
  • 2
  • 18
  • 24
  • in display event what exact code goes there ,the same as i posted ? if(eventList.isSupportedField(Event.END)&& event.countValues(Event.END) > 0) { long end = event.getDate(Event.END, 0); SimpleDateFormat sdf = new SimpleDateFormat("MMM dd, yyyy HH:mm"); String dateString = sdf.formatLocal(end); Dialog.alert(dateString); } – user1195292 Mar 09 '12 at 13:37
  • cal.getField is not available under java.util.Calendar; – user1195292 Mar 09 '12 at 14:03
  • Sorry, my bad, should be cal.get() fixed. How you display it is up to you. I wouldn't use dialogs, but that's me. – Richard Mar 09 '12 at 16:10