2013年12月13日 星期五

【Android】Java日期


// 取得目前日期
Date date = new Date();
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");  
String currentDatetime = dateFormat.format(date);


// 日期-1
Calendar day = Calendar.getInstance(); 
day.add(Calendar.DATE,-1); 
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd "); 
System.out.println("yesterday =" + sdf.format(day.getTime()));


// String 轉日期
String currentDate = "2012-12-13";
Date date = sdf.parse(currentDate); // 解析
Calendar calendar = Calendar.getInstance(); // 呼叫Calendar
calendar.setTime(date); // 設定指定時間

int year=calendar.get(Calendar.YEAR); // 取得年月日
int month=calendar.get(Calendar.MONTH);
int day=calendar.get(Calendar.DAY_OF_MONTH);

String _year = Integer.toString(year); // 轉字串
String _month = Integer.toString(monthOfYear + 1);
String _day = Integer.toString(dayOfMonth);
String date = _year + "-" + _month + "-" + _day;

彈出日期選擇
void dateView(){
 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 
 try {
  //設定日期格式
  Date date = sdf.parse(currentDate);
  
  Calendar calendar = Calendar.getInstance();//取得目前時間
  calendar.setTime(date);//或是設定指定時間
  int year=calendar.get(Calendar.YEAR);
  int month=calendar.get(Calendar.MONTH);
  int day=calendar.get(Calendar.DAY_OF_MONTH);

  new DatePickerDialog(this,
    new DatePickerDialog.OnDateSetListener() {
     @Override
     public void onDateSet(DatePicker view, int year,int monthOfYear, int dayOfMonth) {
      // 設置日曆
      String _year = Integer.toString(year);
      String _month = Integer.toString(monthOfYear + 1);
      String _day = Integer.toString(dayOfMonth);
      String date = _year + "-" + _month + "-" + _day;
      currentDate = date;
      editDate.setText(date);
     }
    }, year, month, day).show();
  
 } catch (ParseException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 } 
}

沒有留言:

張貼留言