SimpleDateFormatter не будет разбирать!
-
02-10-2019 - |
Вопрос
Привет, я пытаюсь использовать SimpleDateFormatter, чтобы разбирать дату Wed, 30 Jun 2010 15:07:06 CST
Я использую следующий код
public static SimpleDateFormat postedformat =
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
Date newDate = new Date(posteformat.parse("Wed, 30 Jun 2010 15:07:06 CST"));
Но я получаю незаконноларгументэксексуал. Пожалуйста помоги!
Решение
postedformat.parse()
Возвращает А. Date
, и нет нет Date(Date)
конструктор.
Предположительно удалить звонок к new Date
, Итак, ты говоришь Date newDate = poste....
будет достаточно
Другие советы
Ваш фрагмент кода не скомпилируется. Эта небольшая модификация компилирует и успешно разбирается:
public static void main(String[] args) throws ParseException {
SimpleDateFormat postedformat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
Date newDate = postedformat.parse("Wed, 30 Jun 2010 15:07:06 CST");
System.out.println("newDate = " + newDate);
}
Это использует Java 6 на Mac OS X.
Здесь нет java.util.Date()
конструктор, который принимает java.util.Date
как аргумент
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormat {
public static SimpleDateFormat postedformat =
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
public static void main(String[] args) {
try {
Date newDate = postedformat.parse("Wed, 30 Jun 2010 15:07:06 CST");
System.out.println("Date: " + newDate);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
Выходы:
Date: Wed Jun 30 22:07:06 BST 2010
Примеры JavadoC показывают безрассудоченную запятую, а для местной базы США. Так что либо попробуйте избежать запятой (как предложил Aaron) или использовать другой конструктор и установить локаль:
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
Другая проблема может быть часовой пояс («CST»), которая устарела на руку и двусмыслению с другой (согласно Javadoc java.util.TimeZone
). Тест, если он работает без атрибута TimeZone (как в формате, так и в формате, так и в значении).