2013-04-09 5 views
1

안드로이드에서 날짜와 시간을 포맷하는 방법에는 여러 가지가있는 것 같습니다 -하지만 아무도 정확히 방법 내가 ;-)서식 날짜와 시간 "설정 - 날짜 및 시간"

방법을 원하는 나는 수 있었다 (직접 또는 간접적으로) 로케일을 사용하는 것이 좋습니다. 그러나 올바른 방법은 사용자가 "설정 - 날짜 및 시간"에서 구성한 것을 사용하는 것입니다.

예를 들어, 사용 :

String res = java.text.DateFormat.getDateTimeInstance(java.text.DateFormat.SHORT, java.text.DateFormat.MEDIUM).format(date); 
       Log.d("", res); 

로그 : 4/9/13 오후 12시 11분 34초

res = android.text.format.DateUtils.formatDateTime(getActivity(), date.getTime(), android.text.format.DateUtils.FORMAT_SHOW_TIME | android.text.format.DateUtils.FORMAT_SHOW_DATE | android.text.format.DateUtils.FORMAT_SHOW_YEAR); 
       Log.d("", res); 

로그 : 12시 11분 2013년 4월 9일

그러나 이것은 구성 방법이 아니며 파일의 날짜와 시간을 보면 다음과 같이 작성됩니다. 09/04/2013 12:11

"설정 - 날짜 및 시간"에서 구성된 형식 문자열 (예 : "yyyy-MM-dd"및 "HH : mm")을 가져 오거나 이러한 방법으로 날짜를 얻는 방법 규칙? 여기

답변

1
Format dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext()); 
formattedDate = formatter.parse(yourDateString); 

:

+0

나는 그것을 이해하므로, 이것은 날짜를 반환 할 것이다 - 나는 다른 방향으로 가고 싶었다. –

+0

편집 된 대답보기 – Triode

-1

check out the developer doc는 u는이 링크를 따라 할 수

SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy"); 
    Date date = new Date(); 

    System.out.println("format 1 " + sdf.format(date)); 

    sdf.applyPattern("E MMM dd yyyy"); 
    System.out.println("format 2 " + sdf.format(date)); 

날짜 형식의 예입니다 DateFormatter에 대한 추가 정보를 원하시면

public static String convertDateToUserFormat(final Date inputDate) { 
if (inputDate != null) { 
    return getDateFormat().format(inputDate); 
} 

return null; 
} 

private static DateFormat getDateFormat() { 
    final String format = Settings.System.getString(context.getContentResolver(), 
      Settings.System.DATE_FORMAT); 
    if (TextUtils.isEmpty(format)) { 
     return android.text.format.DateFormat 
       .getDateFormat(context); 
    } 

    return new SimpleDateFormat(format); 
} 
+1

예,하지만 저는 시스템 포맷을 사용하고 싶습니다. –