我想将日历对象转换为日期,如下所示。
int year,month,day;
mCalendarEnd = Calendar.getInstance();
year = mCalendarEnd.get(Calendar.YEAR);
month = mCalendarEnd.get(Calendar.MONTH)+1;
day = mCalendarEnd.get(Calendar.DAY_OF_MONTH);
现在将其转换为日期对象
Date d1 = new Date(day,month,year);
当我打印日期对象时:
System.out.println("Date : "+d1.getDay()+"/"+d1.getMonth()+"/"+d1.getYear());
它应该打印当前日期,但在上面的代码中它打印错误的日期。不知道怎样才能解决这个问题?你的所有建议都很明显。
答案 0 :(得分:2)
calendar.getTime()
返回Date对象。
但是,如果您只需要今天日期new Date()
,则返回今天日期作为Date对象。
日历示例:
Calendar calendar = Calendar.getInstance()
Log.i("My Tag", "calendar getTime -----> " + calendar.getTime());
输出:
My Tag: calendar getTime -----> Wed Dec 05 13:03:43 GMT+03:30 2018
日期示例:
Log.i("My Tag", "new Date -----> " + new Date());
输出:
My Tag: new Date -----> Wed Dec 05 13:05:38 GMT+03:30 2018
您会看到它们具有相同的输出。
答案 1 :(得分:1)
将其放入您的代码中:
image.convert('RGB').getbbox()
您将获得正确的日期。
答案 2 :(得分:1)
为什么不使用日历?
System.out.println("Date : " + day + "/" + month + "/" + year);
结果1/1/1900
或者您想要其他格式?但不要以1
增加月份System.out.println("Date : " + day + "/" + new DateFormatSymbols().getMonths()[month] + "/" + year);
结果1 / January / 1900
答案 3 :(得分:1)
你需要这样做
//Set calendar
Calendar calendar = Calendar.getInstance();
Date date1 = calendar.getTime(); // gives a date object
//To get day difference, Just an example
calendar.add(Calendar.DAY_OF_MONTH, -7);
Date date2 = calendar.getTime(); // gives a date object
long differenceInMillis = Date1.getTime() - Date2.getTime();
long differenceInDays = TimeUnit.DAYS.convert(differenceInMillis, TimeUnit.MILLISECONDS);
或者不需要日期对象
Calendar calendar = Calendar.getInstance();
long date1InMillis = calendar.getTimeInMillis();
calendar.add(Calendar.DAY_OF_MONTH, -7);
long date2InMillis = calendar.getTimeInMillis();
long differenceInMillis = date1InMillis - date2InMillis;
long differenceInDays = TimeUnit.DAYS.convert(differenceInMillis, TimeUnit.MILLISECONDS);
calendar.getTimeInMillis()
答案 4 :(得分:0)
ModernMenu