android 时间获取以及时间格式化
2016-07-27 20:51
495 查看
Android中获取系统时间有多种方法,可分为Java中Calendar类获取,java.util.date类实现,还有android中Time实现
现总结如下:
方法一;
[java] view plain copy
void getTime1(){
long time=System.currentTimeMillis();//long now = android.os.SystemClock.uptimeMillis();
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1=new Date(time);
String t1=format.format(d1);
Log.e("msg", t1);
}
方法二;
[java] view plain copy
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");
String t=format.format(new Date());
Log.e("msg", t);
方法三;
[java] view plain copy
void getTime3(){
Calendar calendar = Calendar.getInstance();
String created = calendar.get(Calendar.YEAR) + "年"
+ (calendar.get(Calendar.MONTH)+1) + "月"//从0计算
+ calendar.get(Calendar.DAY_OF_MONTH) + "日"
+ calendar.get(Calendar.HOUR_OF_DAY) + "时"
+ calendar.get(Calendar.MINUTE) + "分"+calendar.get(Calendar.SECOND)+"s";
Log.e("msg", created);
}
方法四;
[java] view plain copy
void getTime4(){
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。
t.setToNow(); // 取得系统时间。
String time=t.year+"年 "+(t.month+1)+"月 "+t.monthDay+"日 "+t.hour+"h "+t.minute+"m "+t.second;
Log.e("msg", time);
}
获取星期日期:
[java] view plain copy
Calendar calendar = Calendar.getInstance();
int day = calendar.get(Calendar.DAY_OF_WEEK);
String today = null;
if (day == 2) {
today = "Monday";
} else if (day == 3) {
today = "Tuesday";
} else if (day == 4) {
today = "Wednesday";
} else if (day == 5) {
today = "Thursday";
} else if (day == 6) {
today = "Friday";
} else if (day == 7) {
today = "Saturday";
} else if (day == 1) {
today = "Sunday";
}
System.out.println("Today is:- " + today);
最后说一下日期格式化,日期格式化通常使用SimpleDateFormat类实现,其中的日期格式不能够自己随意定义,主要有以下几种形式:
SimpleDateFormat f1= new SimpleDateFormat(); //其中没有些格式化参数,我们使用默认的日期格式。
System.out.println(f.formate(new Date()));
代码输出的日期格式为:12-3-22 下午4:36
SimpleDateFormat f4= new SimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分");//可根据不同样式请求显示不同日期格式,要显示星期可以添加E参数
System.out.println(f4.format(new Date()));
代码输出的日期格式为:今天是2012年03月22日 星期四 16点46分
SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd hh:mm:ss");
System.out.println("Date to String "+formater.format(new Date()));
相近的常用形式还有 yyMMdd hh:mm:ss yyyy-MM-dd hh:mm:ss dd-MM-yyyy hh:mm:ss
应有的时候通常还会需要把具体日期转换为毫秒或者Timestamp形式,如下:
文本 - > Timestamp,日期 -> Timestamp
Timestamp t ;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try ...{
t = new Timestamp(format.parse("2007-07-19 00:00:00").getTime());
} catch (ParseException e) ...{
e.printStackTrace();
}
Timestamp t ;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
t = new Timestamp(new Date().getTime());
在做读取短信的时候,读取到date字段,需要转换成例如7/21 或者 8:21这种格式,不用手动转换 通过调用相应的类来实现
SimpleDateFormat sfd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");// 这里我们可以指定可是 例如 MM-DD就是只显示月和日 。。。。
Date date = new Date(Long.parseLong(cursor.getString(cursor.getColumnIndex("date"))));//从短信中获得时间
String time = sfd.format(date); //转换完成的字符串 很简单
dataTextView.setText(time); //显示出来就行了
原文链接:http://blog.csdn.net/yudajun/article/details/7939552
现总结如下:
方法一;
[java] view plain copy
void getTime1(){
long time=System.currentTimeMillis();//long now = android.os.SystemClock.uptimeMillis();
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1=new Date(time);
String t1=format.format(d1);
Log.e("msg", t1);
}
方法二;
[java] view plain copy
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");
String t=format.format(new Date());
Log.e("msg", t);
方法三;
[java] view plain copy
void getTime3(){
Calendar calendar = Calendar.getInstance();
String created = calendar.get(Calendar.YEAR) + "年"
+ (calendar.get(Calendar.MONTH)+1) + "月"//从0计算
+ calendar.get(Calendar.DAY_OF_MONTH) + "日"
+ calendar.get(Calendar.HOUR_OF_DAY) + "时"
+ calendar.get(Calendar.MINUTE) + "分"+calendar.get(Calendar.SECOND)+"s";
Log.e("msg", created);
}
方法四;
[java] view plain copy
void getTime4(){
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。
t.setToNow(); // 取得系统时间。
String time=t.year+"年 "+(t.month+1)+"月 "+t.monthDay+"日 "+t.hour+"h "+t.minute+"m "+t.second;
Log.e("msg", time);
}
获取星期日期:
[java] view plain copy
Calendar calendar = Calendar.getInstance();
int day = calendar.get(Calendar.DAY_OF_WEEK);
String today = null;
if (day == 2) {
today = "Monday";
} else if (day == 3) {
today = "Tuesday";
} else if (day == 4) {
today = "Wednesday";
} else if (day == 5) {
today = "Thursday";
} else if (day == 6) {
today = "Friday";
} else if (day == 7) {
today = "Saturday";
} else if (day == 1) {
today = "Sunday";
}
System.out.println("Today is:- " + today);
最后说一下日期格式化,日期格式化通常使用SimpleDateFormat类实现,其中的日期格式不能够自己随意定义,主要有以下几种形式:
SimpleDateFormat f1= new SimpleDateFormat(); //其中没有些格式化参数,我们使用默认的日期格式。
System.out.println(f.formate(new Date()));
代码输出的日期格式为:12-3-22 下午4:36
SimpleDateFormat f4= new SimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分");//可根据不同样式请求显示不同日期格式,要显示星期可以添加E参数
System.out.println(f4.format(new Date()));
代码输出的日期格式为:今天是2012年03月22日 星期四 16点46分
SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd hh:mm:ss");
System.out.println("Date to String "+formater.format(new Date()));
相近的常用形式还有 yyMMdd hh:mm:ss yyyy-MM-dd hh:mm:ss dd-MM-yyyy hh:mm:ss
应有的时候通常还会需要把具体日期转换为毫秒或者Timestamp形式,如下:
文本 - > Timestamp,日期 -> Timestamp
Timestamp t ;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try ...{
t = new Timestamp(format.parse("2007-07-19 00:00:00").getTime());
} catch (ParseException e) ...{
e.printStackTrace();
}
Timestamp t ;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
t = new Timestamp(new Date().getTime());
在做读取短信的时候,读取到date字段,需要转换成例如7/21 或者 8:21这种格式,不用手动转换 通过调用相应的类来实现
SimpleDateFormat sfd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");// 这里我们可以指定可是 例如 MM-DD就是只显示月和日 。。。。
Date date = new Date(Long.parseLong(cursor.getString(cursor.getColumnIndex("date"))));//从短信中获得时间
String time = sfd.format(date); //转换完成的字符串 很简单
dataTextView.setText(time); //显示出来就行了
原文链接:http://blog.csdn.net/yudajun/article/details/7939552
相关文章推荐
- Android 应用 与 系统锁屏
- Android 开发常见问题总结
- Android之简易天气预报小应用(xml解析练手)
- Android代码故事第一回,平均间隔的按钮
- Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
- Android ORM框架之GreenDAO
- 解决viewpager与其他可以左右滑动的事件冲突
- Android自定义控件----YluoTextView可以改变Drawable大小颜色的TextView
- [Android]多module合成单一module技巧
- 学习Android源码应该避免的
- Android textview实现局部点击
- 关于Android Studio里的Gradle,你所需要知道的都在这里了
- 安卓版本更新
- Android View 下拉上拉刷新 适合各种控件
- AndroidStudio自动弹出Documentation
- 内存溢出整理之图片加载不能超过单个进程8M限制
- android之官方下拉刷新组件SwipeRefreshLayout
- AndroidStudio调试技巧
- T- MVP在项目中的使用
- 我的Android进阶之旅------>Android Studio使用statistics插件统计项目代码总行数