2012-06-04 2 views
0
SimpleDateFormat format = new SimpleDateFormat("GD_yyyyMMdd_HHmmss"); 
    System.out.println(format.format(new Date())); 

Я хочу, чтобы результат, как 'GD_20120604_164534' но результат AD156_20120604_165315SimpleDateFormat конвертировать

как установить параметры могут вернуть мое готово result.thanks заранее!

ответ

4

G эпоха целеуказатель и D представляет день, как указано в SimpleDateFormat ссылка:

Текст может быть указан с использованием одинарных кавычек ('), чтобы избежать интерпретации. «« »представляет одну цитату.

Изменить на:

SimpleDateFormat format = new SimpleDateFormat("'GD_'yyyyMMdd_HHmmss"); 
+0

я вижу, спасибо всем – liuzhijun

0

Это потому, что G и D являются переменными, как yyyy:

G Era designator Text AD 
D Day in year  Number 189 

Вы должны избежать этих два письма (я думаю, с одной цитатой)

0

Согласно JavaDocs, G обозначает эпоху и D обозначает день года.

Один из способов обхода этого и делать то, что вы хотите бы сделать что-то вроде этого:

String newDate = "GD_" + format.format(new Date());

1
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd_HHmmss"); 
System.out.println("GD_" + format.format(new Date())); 
0
SimpleDateFormat format = new SimpleDateFormat("'GD'_yyyyMMdd_HHmmss"); 
System.out.println(format.format(new Date())); 

использования ", чтобы избежать ваших персонажей