Если префикс +0
является константой, вы можете просто заключить его в кавычки.
String string = "+020110312";
Date date = new SimpleDateFormat("'+0'yyyyMMdd").parse(string);
System.out.println(date); // Sat Mar 12 00:00:00 GMT-04:00 2011
(результат правильный в соответствии с моим часовым поясом)
Обратите внимание, что месяцы представлены MM
, а не mm
. mm
представляет минуты. Использование mm
в течение нескольких месяцев может повредить результат анализа.
Смотри также:
Обновление : так как в будущем это может измениться ", но в будущем это может быть больше, чем один ноль" , лучше рассмотреть подстроку последних 8 символов. 1026 *
String string = "+020110312";
Date date = new SimpleDateFormat("yyyyMMdd").parse(string.substring(string.length() - 8));
System.out.println(date); // Sat Mar 12 00:00:00 GMT-04:00 2011