Подтвердить что ты не робот

Как преобразовать дату JavaScript в Java?

Мне нужно конвертировать JsDate в java.util.Date., который я искал, но ничего не смог найти. Не могли бы вы помочь мне с этой проблемой?

Изменить: Я делаю этот процесс преобразования на экране GWT. У меня есть Datepicker на экране, и он дает мне значение JsDate, когда я использую его getValue(). Поэтому я должен поместить это значение в свойство объекта типа Date.

ObjectName.setDate(PickerName.getValue());

Я надеюсь, что мои изменения будут более понятными.

Edit2:

Эта строка является решением моей проблемы:

myObject.setDate(new Date((long) myPicker.getValue().getTime()));
4b9b3361

Ответ 1

Лучший способ преобразования дат - использовать время в миллисекундах, UTC. И объект JS Date, и класс java.util.Date поддерживают преобразование в миллисекундах (getTime()) и создание экземпляра из миллисекунд (с использованием конструктора).

Ответ 2

Вы можете создать объект java.util.Date из значения "время с момента" JS Date

Javascript

var d = new Date().getTime();

ява

// get value from client (ajax, form, etc), and construct in Date object

long valueFromClient = ...

Date date = new Date(valueFromClient);

String formatted = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);

Ответ 3

Если такие люди, как я, вынуждены разбирать строку даты в формате JS (в результате (new Date()).toString() в JavaScript), вот спецификация SimpleDateFormat, которую я использовал:

DateFormat jsfmt = new SimpleDateFormat("EE MMM d y H:m:s 'GMT'Z (zz)");

Если у вас есть контроль над производителем дат, я согласен, что использование временных меток или, по крайней мере, .toUTCString(), безусловно, более надежное.

Ответ 4

Вы можете захотеть это:

java:
String jsDate="2013-3-22 10:13:00";
Date javaDate=new SimpleDateFormat("yy-MM-dd HH:mm:ss").parse(jsDate);
System.out.println(javaDate);

Ответ 5

Я бы предложил использовать метод анализа DateFormat (doc можно найти здесь). Он может анализировать строковое представление даты и возвращать java.util.Date.

Ответ 6

JS Date - новая дата() Ср 14 августа 2019 14:54:38 GMT + 0530 (стандартное время Индии)

Java Дата - новая дата(). toISOString() "2019-08-14T09: 25: 50.136Z"