Ну да. Аргумент, который вы передаете в конструктор SimpleDateFormat
, указывает формат, в котором вы ожидаете, что дата будет находиться.
"EEEE, MMMM/dd/yyyy"
будет действителен для ввода «вторник, февраль/26/2013». Не совсем немного действует для "2-26-2013". Вы понимаете, что вы синтаксический анализ текста на данный момент, а не его форматирование?
Похоже, вам нужна строка формата «M-dd-yyyy» или, возможно, «M-d-yyyy».
Если вы пытаетесь конвертировать из одного формата в другой, нужно сначала определить формат для синтаксического анализа, а затем указать формат, формат с:
SimpleDateFormat parser = new SimpleDateFormat("M-dd-yyyy");
SimpleDateFormat formatter = new SimpleDateFormat("EEEE, MMMM/dd/yyyy");
Date date = parser.parse(input);
String output = formatter.format(date);
любые предложения, я просто хочу преобразовать строку в подходящем формате, чтобы я мог получить их в год. –
Что значит «вернуть их в год»? Вы имеете в виду извлечение годной части даты? – NickJ
@MuhsinaM: Что вы подразумеваете под «получить их по годам»? Что это имеет отношение к форматированию в виде текста? –