如何阅读从本地日历特定日期的事件 [英] How to read events for a particular date from native calendar

查看:139
本文介绍了如何阅读从本地日历特定日期的事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试着去阅读我的应用程序(ICS及以上)本地日历事件,但有时它的工作原理,有些时候它显示了一些不正确values​​.Currently我使用的这块code的任何人都可以请告诉我在哪儿要去错了..

  Uri.Builder建设者= Uri.parse(内容://com.android.calendar/instances/when).buildUpon();
    长今=新的日期()的getTime()。
    ContentUris.appendId(制造商,至今);
    ContentUris.appendId(制造商,现+ DateUtils.YEAR_IN_MILLIS);    光标eventCursorr = cr.query(builder.build(),
            新的String [] {标题,开始,说明},Calendars._id =+ CALID,
            空,朝九特派ASC,ASC startMinute);    而(eventCursorr.moveToNext()){
        最后弦乐蒂特勒= eventCursorr.getString(0).trim();
        最后日期beginr =新的日期(eventCursorr.getLong(1));
        最后弦乐descriptionr = eventCursorr.getString(2).trim();        SimpleDateFormat的sdfrr =新的SimpleDateFormat(YYYY-MM-DD HH:MM:SS);        字符串stimesr = sdfrr.format(beginr);
 的System.out.println(字幕机+字幕机+stimesr+ stimesr +descriptionr+ descriptionr);
    }}


解决方案

我解决了这家伙。

  //开始时间
SimpleDateFormat的格式化=新的SimpleDateFormat(MM / DD / YY);
日期dateCC = formatter.parse(2013年4月27日);
日历calendarStartDate = Calendar.getInstance();
calendar.setTime(dateCC);//时间结束
SimpleDateFormat的formatterr =新的SimpleDateFormat(MM / DD / YY HH:MM:SS);日历endOfDay = Calendar.getInstance();
日期dateCCC = formatterr.parse(2013年4月27日23:59:59);
endOfDay.setTime(dateCCC);光标eventCursorr = cr.query(l_eventUri,
    新的String [] {
    标题,DTSTART,DTEND
},(+ DTSTART +>中+后+和+ DTEND +&下;+ endOfDay.getTimeInMillis()+),
    空,DTSTART ASC);而(eventCursorr.moveToNext()){
    最后弦乐蒂特勒= eventCursorr.getString(0).trim();
    最后日期beginr =新的日期(eventCursorr.getLong(1));
    最后弦乐descriptionr = eventCursorr.getString(2).trim();}

Im trying to read native calender events from my app(ICS and above) but sometimes it works and some times it shows some incorrect values.Currently i'm using this piece of code can anyone please tell me where i'm going wrong..

Uri.Builder builder = Uri.parse("content://com.android.calendar/instances/when").buildUpon();
    long now = new Date().getTime();
    ContentUris.appendId(builder, now);
    ContentUris.appendId(builder, now + DateUtils.YEAR_IN_MILLIS);





    Cursor eventCursorr = cr.query(builder.build(),
            new String[] { "title", "begin","description"}, "Calendars._id=" + calID,
            null, "startDay ASC, startMinute ASC"); 

    while (eventCursorr.moveToNext()) {
        final String titler = eventCursorr.getString(0).trim();
        final Date beginr = new Date(eventCursorr.getLong(1));
        final String descriptionr = eventCursorr.getString(2).trim();



        SimpleDateFormat sdfrr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        String stimesr = sdfrr.format(beginr);


 System.out.println("titler "+titler +"stimesr "+stimesr +"descriptionr "+descriptionr );






    }





}

解决方案

i solved it guys.

//StartTime 
SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yy");
Date dateCC = formatter.parse("04/27/2013");
Calendar calendarStartDate = Calendar.getInstance();
calendar.setTime(dateCC);

//EndTime
SimpleDateFormat formatterr = new SimpleDateFormat("MM/dd/yy hh:mm:ss");

Calendar endOfDay = Calendar.getInstance();
Date dateCCC = formatterr.parse("04/27/2013 23:59:59");
endOfDay.setTime(dateCCC);

Cursor eventCursorr = cr.query(l_eventUri,
    new String[] {
    "title", "dtstart", "dtend"
}, "(" + dtstart + ">" + after + " and " + dtend + "<" + endOfDay.getTimeInMillis() + ")",
    null, "dtstart ASC");

while (eventCursorr.moveToNext()) {
    final String titler = eventCursorr.getString(0).trim();
    final Date beginr = new Date(eventCursorr.getLong(1));
    final String descriptionr = eventCursorr.getString(2).trim();

}

这篇关于如何阅读从本地日历特定日期的事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆