Вот мой код,
SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
Date dft = (Date) format.parse("16-MAY-2018 09:30:22:000");
Я получаю исключение ниже
java.text.ParseException: неразборчивая дата: "16-MAY-2018 09:30:22"
Что нужно использовать для анализа миллисекунд?
MM
, ваша строка имеетMAY
. Если вы очень внимательно посмотрите, то увидите, что это не совсем совпадает.16-05-2018 09:30:22
— это строка, необходимая для вашего шаблона. - person Ben   schedule 03.05.2018MM
делает подразумевает, что месяц должен быть числом. Если количество букв шаблона равно 3 и более, месяц интерпретируется как текст; в противном случае он интерпретируется как число. Таким образом, дляMM
количество букв шаблона меньше 3, поэтому месяц интерпретируется как число. - person khelwood   schedule 03.05.2018Locale
не являетсяLocale.English
илиLocale.English
указанным в качестве второго параметра для конструктораSimpleDateFormat
. - person Ben   schedule 03.05.2018Date
иSimpleDateFormat
? Я рекомендую вам забыть о них и вместо этого использоватьjava.time
, современный API даты и времени Java. С ним намного приятнее работать. - person Ole V.V.   schedule 03.05.2018