/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.time.* ;
import java.time.format.* ;
import java.time.temporal.* ;
import java.time.chrono.* ;
import java.time.zone.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
ZoneId z = ZoneId.of( "Europe/Berlin" ) ;
ZonedDateTime zdt = ZonedDateTime.now( z ) ;
DateTimeFormatter f
= DateTimeFormatter.
ofLocalizedDateTime( FormatStyle.
FULL ).
withLocale( Locale.
GERMANY ) ; String outputLocalized
= zdt.
format( f
) ; Instant instant = zdt.toInstant() ;
long milliseconds = instant.toEpochMilli() ; // Beware of data loss, as any microseconds/nanoseconds are ignored.
String output
= instant.
truncatedTo( ChronoUnit.
MILLIS ).
toString() ; // Generate text in standard ISO 8601 format
System.
out.
println( "zdt.toString(): " + zdt
) ; System.
out.
println( "instant.toString(): " + instant
) ; System.
out.
println( "milliseconds: " + milliseconds
) ; System.
out.
println( "output: " + output
) ;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC4qIDsKaW1wb3J0IGphdmEudGltZS50ZW1wb3JhbC4qIDsKaW1wb3J0IGphdmEudGltZS5jaHJvbm8uKiA7CmltcG9ydCBqYXZhLnRpbWUuem9uZS4qIDsKCgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoKCQlab25lSWQgeiA9IFpvbmVJZC5vZiggIkV1cm9wZS9CZXJsaW4iICkgOwoJCVpvbmVkRGF0ZVRpbWUgemR0ID0gWm9uZWREYXRlVGltZS5ub3coIHogKSA7CgkJRGF0ZVRpbWVGb3JtYXR0ZXIgZiA9IERhdGVUaW1lRm9ybWF0dGVyLm9mTG9jYWxpemVkRGF0ZVRpbWUoIEZvcm1hdFN0eWxlLkZVTEwgKS53aXRoTG9jYWxlKCBMb2NhbGUuR0VSTUFOWSApIDsKCQlTdHJpbmcgb3V0cHV0TG9jYWxpemVkID0gemR0LmZvcm1hdCggZiApIDsKCQlJbnN0YW50IGluc3RhbnQgPSB6ZHQudG9JbnN0YW50KCkgOwoJCWxvbmcgbWlsbGlzZWNvbmRzID0gaW5zdGFudC50b0Vwb2NoTWlsbGkoKSA7ICAvLyBCZXdhcmUgb2YgZGF0YSBsb3NzLCBhcyBhbnkgbWljcm9zZWNvbmRzL25hbm9zZWNvbmRzIGFyZSBpZ25vcmVkLiAKCQlTdHJpbmcgb3V0cHV0ID0gaW5zdGFudC50cnVuY2F0ZWRUbyggQ2hyb25vVW5pdC5NSUxMSVMgKS50b1N0cmluZygpIDsgIC8vIEdlbmVyYXRlIHRleHQgaW4gc3RhbmRhcmQgSVNPIDg2MDEgZm9ybWF0CgkJCgkJU3lzdGVtLm91dC5wcmludGxuKCAiemR0LnRvU3RyaW5nKCk6ICIgKyB6ZHQgKSA7CgkJU3lzdGVtLm91dC5wcmludGxuKCAiaW5zdGFudC50b1N0cmluZygpOiAiICsgaW5zdGFudCApIDsKCQlTeXN0ZW0ub3V0LnByaW50bG4oICJtaWxsaXNlY29uZHM6ICIgKyBtaWxsaXNlY29uZHMgKSA7CgkJU3lzdGVtLm91dC5wcmludGxuKCAib3V0cHV0OiAiICsgb3V0cHV0ICkgOwoJCQoKCX0KfQ==