Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Calendar parseDate(String input) {
- Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
- int date = 0, month = 0, year = 0, hourOfDay = 0, minute = 0, second = 0;
- Pattern p = Pattern.compile("([0-3][0-9])[ -]*(\\w+)[ -]*([0-9]*)[ ]*([0-9][0-9]):([0-9][0-9]):([0-9][0-9])[ ]*([A-Z]*)");
- Matcher m = p.matcher(input);
- if(!m.find())
- return null;
- date = Integer.parseInt(m.group(1));
- String mon = m.group(2).toLowerCase();
- switch(mon)
- {
- case "jan":month=0;
- break;
- case "feb":month=1;
- break;
- case "mar":month=2;
- break;
- case "apr":month=3;
- break;
- case "may":month=4;
- break;
- case "jun":month=5;
- break;
- case "jul":month=6;
- break;
- case "aug":month=7;
- break;
- case "sep":month=8;
- break;
- case "oct":month=9;
- break;
- case "nov":month=10;
- break;
- case "dec":month=11;
- break;
- default:
- return null;
- }
- String y = m.group(3);
- int temp;
- if(y.length()==4)
- year = Integer.parseInt(y);
- else if(y.length()==2)
- {
- temp=Integer.parseInt(m.group(3));
- if(temp>=0 && temp<70)
- year = 2000+temp;
- else if(temp >= 70 && temp <100)
- year = 1900+temp;
- }
- hourOfDay = Integer.parseInt(m.group(4));
- minute = Integer.parseInt(m.group(5));
- second = Integer.parseInt(m.group(6));
- String tz = m.group(7);
- if(!tz.contentEquals("")&&!tz.contentEquals("GMT"))
- {
- return null;
- }
- cal.set(year, month, date, hourOfDay, minute, second);
- return cal;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement