I am getting date in the format of YYYDD
, and I want to convert it in YYYY-MM-DD
, I tried several ways but no luck, any one has solution please suggest.
after searching on Google I got the below link, which has function to convert above data format but it is asking for two parameters one is input date string and second is number of days to add. any suggestion
translateDateStr
Using SimpleDateFormat
:
SimpleDateFormat format1 = new SimpleDateFormat("yyDDD");
SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd");
String oldDate = "12060";
Date d = format1.parse(oldDate);
String newDate = format2.format(d)
System.out.println(newDate);
would print out "2012-02-29"
Using Joda Time
import org.joda.time.LocalDate;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
String yyyddd_date= "00130";
DateTimeFormatter inputFormat = DateTimeFormat.forPattern("yyDDD");
DateTimeFormatter outputFormat = DateTimeFormat.forPattern("yyDDD");
String outputformatdatestring = LocalDate.parse(yyyddd_date, inputFormat).toString(outputFormat);
format codes (from http://joda-time.sourceforge.net/api-release/index.html)
Symbol Meaning Presentation Examples
------ ------- ------------ -------
G era text AD
C century of era (>=0) number 20
Y year of era (>=0) year 1996
x weekyear year 1996
w week of weekyear number 27
e day of week number 2
E day of week text Tuesday; Tue
y year year 1996
D day of year number 189
M month of year month July; Jul; 07
d day of month number 10
a halfday of day text PM
K hour of halfday (0~11) number 0
h clockhour of halfday (1~12) number 12
H hour of day (0~23) number 0
k clockhour of day (1~24) number 24
m minute of hour number 30
s second of minute number 55
S fraction of second number 978
z time zone text Pacific Standard Time; PST
Z time zone offset/id zone -0800; -08:00; America/Los_Angeles
' escape for text delimiter
'' single quote literal '
use SimpleDateFormat:
SimpleDateFormat format = new SimpleDateFormat("yyDDD");
Date date = format.parse("12060", 0);
for storing the date in the format you want, you would do similar, just from the other direction...
http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html