Time Zone
La risposta accettata è corretta, tranne che ignora la questione cruciale del fuso orario. La tua stringa di inserimento è 6:10 PM a Parigi o Montréal? O UTC?
Utilizzare un proper time zone name. Di solito un continente più città/regione. Ad esempio, "Europe/Oslo"
. Evita i codici a 3 o 4 lettere che non sono né standardizzati né unici.
Joda Time
Di seguito è riportato lo stesso tipo di codice, ma utilizzando la libreria Joda-Time 2.5 e la gestione del fuso orario.
Le classi java.util.Date, .Calendar e .SimpleDateFormat sono notoriamente problematiche, confuse e imperfette. Evitalo. Utilizzare Joda-Time o il pacchetto java.time (ispirato Joda-Time) incorporato in Java 8.
ISO 8601
La stringa è quasi in formato ISO 8601. Le barre devono essere trattini e lo SPAZIO in mezzo deve essere sostituito con uno T
. Se lo modifichiamo, la stringa risultante può essere inserita direttamente nel costruttore senza preoccuparsi di specificare un formattatore. Joda-Time utilizza i formati ISO 8701 in quanto è di default per l'analisi e la generazione di stringhe.
Esempio di codice
String inputRaw = "2014/10/29 18:10:45";
String input = inputRaw.replace("/", "-").replace(" ", "T");
DateTimeZone zone = DateTimeZone.forID("Europe/Oslo"); // Or DateTimeZone.UTC
DateTime dateTime = new DateTime(input, zone);
long millisecondsSinceUnixEpoch = dateTime.getMillis();
fonte
2014-10-29 20:26:08
SimpleDateFormat è tuo amico. – user2336315
Come si converte una data in millisecondi, intendi tempo? – brso05
Inoltre dici ms fino ad oggi? – brso05