Преобразование SimpleDateFormat в строковые проблемы - PullRequest
0 голосов
/ 19 января 2012

Я пытаюсь преобразовать SimpleDateFormat в строку, но результат неверный.

Calendar cal = Calendar.getInstance();
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Log.d("current date",dateFormat.format(cal.getTime()));
cal.add(Calendar.YEAR,-3);
Log.d("3 years previous date",dateFormat.format(cal.getTime()));

String valnow = dateFormat.format(new Date());

Выход:

01-19 05:34:52.148: DEBUG/current date(556): 19/01/2012
01-19 05:34:52.148: DEBUG/3 years previous date(556): 19/01/2009

Но valnow значение = 19/01/2012.

Может кто-нибудь сказать мне, как это сделать? Если у вас есть примеры, это будет реальная помощь!

Ответы [ 3 ]

7 голосов
/ 19 января 2012

Попробуйте заменить

String valnow = dateFormat.format(new Date());

на

String valnow = dateFormat.format(cal.getTime());
1 голос
/ 19 января 2012
long lo = System.currentTimeMillis();
//    long lo = Long.parseLong(date);
    Log.e("Try", "Check "+lo);

    SimpleDateFormat formatter = new SimpleDateFormat("EEEE, MMMM d 'at' hh:mm a 'in the year' yyyy G");  
    String formattedDateString = formatter.format(lo);  
    Log.e("Try", "Check Ti`enter code here`me Date "+formattedDateString);
0 голосов
/ 19 января 2012
    DateFormat.format("MM/dd/yy", System.currentTimeMillis()).toString();
...