android 时间获取以及时间格式化

来源:互联网 发布:淘宝上代购是真的吗 编辑:程序博客网 时间:2024/05/18 21:43

Android中获取系统时间有多种方法,可分为Java中Calendar类获取,java.util.date类实现,还有android中Time实现
现总结如下:
方法一;

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);      }  

方法二;

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");          String t=format.format(new Date());          Log.e("msg", t);  

方法三;

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);     }  

方法四;

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);      }  

获取星期日期:

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());
0 0