web-dev-qa-db-ja.com

JavaScriptの日付をJavaの日付に変換する方法は?

JsDateを_Java.util.Date._に変換する必要がありますが、検索できませんでした。だからこの問題で私を助けてもらえますか?

編集: GWT画面でこの変換プロセスを実行します。画面にDatepickerがあり、getValue()メソッドを使用すると、JsDate値が表示されます。したがって、この値をDate型を持つオブジェクトのプロパティに設定することになっています。

_ObjectName.setDate(PickerName.getValue());
_

編集がより明確になることを願っています。

Edit2:

この行は私の問題の解決策です:

_myObject.setDate(new Date((long) myPicker.getValue().getTime()));
_
37
angaraeski

日付変換の最良の方法は、ミリ秒単位の時間(UTC)を使用することです。 JS DateオブジェクトとJava.util.Dateクラスはどちらも、ミリ秒(getTime())への変換とミリ秒からのインスタンス化(コンストラクターを使用)をサポートします。

35
AlexR

JS Dateの「エポックからの時間」値からJava.util.Dateオブジェクトを作成できます。

javascript

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

Java

// 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);
34
epoch

私のような人が(JavaScriptの_(new Date()).toString()_の結果として)JS形式の日付文字列を解析することを余儀なくされた場合、私が使用したSimpleDateFormat仕様は次のとおりです。

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

日付のプロデューサーを管理している場合は、タイムスタンプを使用するか、少なくとも.toUTCString()を使用する方が確実に堅牢であることに同意します。

11

これが必要な場合があります。

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);
2
sunxs

DateFormat解析メソッドを使用することをお勧めします(docは here にあります)。日付の文字列表現を解析し、Java.util.Dateを返すことができます。

JS Date-new Date()Wed August 14 2019 14:54:38 GMT + 0530(インド標準時)

Java Date-新しいDate()。toISOString() "2019-08-14T09:25:50.136Z"

0
Akhilesh Sinha