android-日历显示错误的日期和时间

问题描述

日历显示错误的日期和时间
final Calendar c = Calendar.getInstance();
        Toast.makeText(alarm.this, " "+c.DAY_OF_MONTH+ " " +c.MONTH+ " " +c.YEAR ,
                Toast.LENGTH_LONG).show();

这个代码显示05-02-01的日期,而不是今天的日期(17-04-2013)。这是什么错误呢?

解决方案

你显示的不是当前的年月日,DAY_OF_MONTH这些是Calendar里的一些属性,你显示的是这些属性的值,应该这样

Toast.makeText(this, " "+c.get(Calendar.DAY_OF_MONTH)+ " " +c.get(Calendar.MONTH)+ " " +c.get(Calendar.YEAR) ,
                Toast.LENGTH_LONG).show();

获取月份的时候要加1才是现在的月份

解决方案二:

使用 get 方法来获得实际字段值:

c.get(Calendar.DAY_OF_MONTH) ...

DAY_OF_MONTH 的值实际上是一个常数,引用日历对象的字段。

时间: 2024-09-09 11:11:41

android-日历显示错误的日期和时间的相关文章

【Android开发】基本组件-日期、时间拾取器

为了能够让用户选择日期和时间,Android提供了日期.时间拾取器,分别是DatePicker组件和TimePicker组件.这两个组件使用比较简单,可以在Eclipse的可视化界面设计器中,选择对应的组件并拖拽到布局文件中.为了可以在程序中获取用户选择的日期.时间,还要为DatePicker和TimePicker组件添加事件监听器.其中DatePicker组件对应的事件监听器是OnDateChangedListener,而TimePicker组件对应的时间监听器是OnTimeChangedLi

Linux date命令 - 显示和设置系统日期与时间

操作系统上的时间也许只是当做一个时钟.特别在控制台下, 我们通常并不认为时间有什么重要的.但是对于管理员,这种认识是错误的.你知道错误的日期和时间会导致你不能编译程序么? 因为日期和时间很重要,这或许就是开发网络时间协议(NTP:Network Time Protocol)的原因.让我们了解下date命令是如何工作的. 显示系统日期 要显示系统日期,只要输入: $ date Thu Dec 5 22:55:41 WIB 2013 格式化显示日期 日期有很多格式.如果你不喜欢默认的格式,你可以换一

只显示月、日、时-Android请教:同时显示日期和时间选择器

问题描述 Android请教:同时显示日期和时间选择器 开发中遇到一个问题: 需要在一个控件中同时显示日期和时间选择器 要求:日期只显示月.日:时间只显示24小时制的时 网上翻了好久没看见合适的,请教各位路过的大神给一些思路或者解决方案 解决方案 http://www.iteye.com/topic/1131942挺好的,不要年份的话,可以到xml里面将年份隐藏 解决方案二: http://www.2cto.com/kf/201407/320686.html 解决方案三: 朋友你好,你发的这个链

Android中日期与时间设置控件用法实例_Android

本文实例讲述了Android中日期与时间设置控件用法.分享给大家供大家参考.具体如下: 1.日期设置控件:DatePickerDialog 2.时间设置控件:TimePickerDialog 实例代码: 页面添加两个Button,单击分别显示日期设置控件和时间设置控件,还是有TextView控件,用于显示设置后的系统时间 main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout x

Android中日期与时间设置控件用法实例

本文实例讲述了Android中日期与时间设置控件用法.分享给大家供大家参考.具体如下: 1.日期设置控件:DatePickerDialog 2.时间设置控件:TimePickerDialog 实例代码: 页面添加两个Button,单击分别显示日期设置控件和时间设置控件,还是有TextView控件,用于显示设置后的系统时间 main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout x

android默认系统日期、时间、时区更改

 android默认系统日期.时间.时区更改       做android平台,经常会遇到产品需要更改系统默认时区日期时间的问题.android更改时区相对比较容易实现,网上也有很多资料,直接设置一个属性即可,例如设置上海东八区,persist.sys.timezone=Asia/Shanghai.但是如何实现更改默认系统时间呢?       在android中,Linux内核中.rtc时钟,默认的起始日期都是1970年1月1日,那么如何把默认日期指到2012-01-01呢?笔者在实践中发现,在

学习Java中的日期和时间处理及Java日历小程序的编写_java

Java 在 java.util 包中提供了 Date 类,这个类封装了当前的日期和时间. Date 类支持两种构造函数.第一个构造函数初始化对象的当前日期和时间. Date( )下面的构造函数接收一个参数等于自1970年1月1日午夜起已经过的毫秒数 Date(long millisec) 一旦有一个可用的日期对象,可以调用以下任何一种支持的方法使用时间: SN 方法和描述 1 boolean after(Date date) 如果调用Date对象包含或晚于指定的日期则返回true,否则,返回f

ASP.NET 2.0显示写入日期和时间语法

快速参考文件,简易实用. (1) 显示.写入完整的日期和时间: .aspx.cs (写入用): string strSql = "UPDATE 数据表名称 SET 日期字段名称='" + DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") + "'"; .aspx (显示用): <asp:Label ID="Label1" runat="server" Text=

Excel2007中正确的显示日期和时间

 当在Excel单元格中键入日期或时间时,它会以默认的日期和时间格式显示.默认的日期和时间基于在 Windows 控制面板中指定的区域日期和时间设置,并会随着这些设置的更改而更改.可以用几种其他日期和时间格式(其中大多数不受"控制面板"设置的影响)来显示数字. 1.选择要设置格式的单元格. 2.在"开始"选项卡上,单击"数字"旁边的"对话框启动器". 3.在"分类"列表中,单击"日期"或