如何将字符串(yyyy-mm-dd)转换为日期格式

时间:2011-09-20 08:04:08

标签: blackberry-jde

我找到的日期是(yyyy-mm-dd)格式,如2011-09-20。 请给我解决方案,将此字符串转换为日期。

我想将这个日期添加到黑莓的日历活动中。

1 个答案:

答案 0 :(得分:0)

我不确定我完全理解你的问题。如果您尝试获取当前日期,请使用以下代码:

java.util.Date today = new java.util.Date();

获取当前日期,然后使用

today.toString() 

获取日,月和年等信息。 (请查看BlackBerry API)

如果您尝试设置日期对象,我可能会使用日历。

以下是我的代码示例,其中我根据指定的日期创建了一个Calendar对象,然后将其添加到BlackBerry日历

PIM pim = PIM.getInstance();
            try {

                String _date = date.getText();
                int _month  = Integer.parseInt(_date.substring(0, _date.indexOf('/')));
                _date = _date.substring(_date.indexOf('/') + 1);
                int _day = Integer.parseInt(_date.substring(0, _date.indexOf('/')));
                _date = _date.substring(_date.indexOf('/') + 1);
                int _year = Integer.parseInt(_date.substring(0, _date.indexOf('/')));
                _year = _year + 2000;

                EventList events = (EventList) pim.openPIMList(PIM.EVENT_LIST, PIM.READ_WRITE);
                Event event = events.createEvent();
                event.addString(Event.SUMMARY, PIMItem.ATTR_NONE, title.getText());
                Calendar cal = Calendar.getInstance();
                cal.set(Calendar.YEAR, _year);

                //this of course seems like a terrible way to set the months, but the BlackBerry
                //api wants the month in this format
                if(_month == 1)
                    cal.set(Calendar.MONTH, Calendar.JANUARY);
                if(_month == 2)
                    cal.set(Calendar.MONTH, Calendar.FEBRUARY);
                if(_month == 3)
                    cal.set(Calendar.MONTH, Calendar.MARCH);
                if(_month == 4)
                    cal.set(Calendar.MONTH, Calendar.APRIL);
                if(_month == 5)
                    cal.set(Calendar.MONTH, Calendar.MAY);
                if(_month == 6)
                    cal.set(Calendar.MONTH, Calendar.JUNE);
                if(_month == 7)
                    cal.set(Calendar.MONTH, Calendar.JULY);
                if(_month == 8)
                    cal.set(Calendar.MONTH, Calendar.AUGUST);
                if(_month == 9)
                    cal.set(Calendar.MONTH, Calendar.SEPTEMBER);
                if(_month == 10)
                    cal.set(Calendar.MONTH, Calendar.OCTOBER);
                if(_month == 11)
                    cal.set(Calendar.MONTH, Calendar.NOVEMBER);
                if(_month == 12)
                    cal.set(Calendar.MONTH, Calendar.DECEMBER);


                cal.set(Calendar.DATE, _day);
                cal.set(Calendar.HOUR_OF_DAY, 17);
                cal.set(Calendar.MINUTE, 15);

                event.addDate(Event.START, PIMItem.ATTR_NONE, cal.getTime().getTime());
                cal.set(Calendar.HOUR_OF_DAY, 21);

                event.addDate(Event.END, PIMItem.ATTR_NONE, cal.getTime().getTime());
                event.addString(BlackBerryEvent.LOCATION, PIMItem.ATTR_NONE, address.getText());
                event.addString(Event.NOTE, PIMItem.ATTR_NONE, description.getText());

                event.commit();

                Dialog.alert(title.getText() + " was added to your calendar.");

            } catch (PIMException e) {
                // TODO Auto-generated catch block
                System.out.println(e.getMessage());
                e.printStackTrace();
            }
        }

祝你好运!