/* 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
{
{
String input
= "20200519T142616Z" ; DateTimeFormatter f = DateTimeFormatter.ofPattern( "uuuuMMdd'T'HHmmssXXXXX" ) ;
OffsetDateTime odt = OffsetDateTime.parse( input , f ) ;
ZoneId z = ZoneId.of( "Africa/Tunis" ) ;
ZonedDateTime zdt = odt.atZoneSameInstant( z ) ;
Locale locale
= new Locale( "fr" ,
"TN" ) ; // Or `Locale.UK` etc. DateTimeFormatter fOutput = DateTimeFormatter.ofLocalizedDateTime( FormatStyle.LONG ).withLocale( locale ) ;
String output
= zdt.
format( fOutput
) ;
System.
out.
println( "odt.toString(): " + odt
) ; // Standard ISO 8601 format. System.
out.
println( "zdt.toString(): " + zdt
) ; // Standard ISO 8601 format wisely extended by appending the name of the time zone in square brackets. System.
out.
println( "output: " + output
) ; // Automatically localized format.
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC4qIDsKaW1wb3J0IGphdmEudGltZS50ZW1wb3JhbC4qIDsKaW1wb3J0IGphdmEudGltZS5jaHJvbm8uKiA7CmltcG9ydCBqYXZhLnRpbWUuem9uZS4qIDsKCgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewogICAgICAgIFN0cmluZyBpbnB1dCA9ICIyMDIwMDUxOVQxNDI2MTZaIiA7CgkgICAgRGF0ZVRpbWVGb3JtYXR0ZXIgZiA9IERhdGVUaW1lRm9ybWF0dGVyLm9mUGF0dGVybiggInV1dXVNTWRkJ1QnSEhtbXNzWFhYWFgiICkgOwoJICAgIE9mZnNldERhdGVUaW1lIG9kdCA9IE9mZnNldERhdGVUaW1lLnBhcnNlKCBpbnB1dCAsIGYgKSA7CgkgICAgCgkgICAgWm9uZUlkIHogPSBab25lSWQub2YoICJBZnJpY2EvVHVuaXMiICkgOwoJICAgIFpvbmVkRGF0ZVRpbWUgemR0ID0gb2R0LmF0Wm9uZVNhbWVJbnN0YW50KCB6ICkgOwoJICAgIAoJICAgIExvY2FsZSBsb2NhbGUgPSBuZXcgTG9jYWxlKCAiZnIiICwgIlROIiApIDsgIC8vIE9yIGBMb2NhbGUuVUtgIGV0Yy4gCgkgICAgRGF0ZVRpbWVGb3JtYXR0ZXIgZk91dHB1dCA9IERhdGVUaW1lRm9ybWF0dGVyLm9mTG9jYWxpemVkRGF0ZVRpbWUoIEZvcm1hdFN0eWxlLkxPTkcgKS53aXRoTG9jYWxlKCBsb2NhbGUgKSA7CgkgICAgU3RyaW5nIG91dHB1dCA9IHpkdC5mb3JtYXQoIGZPdXRwdXQgKSA7CgkgICAgCgkgICAgU3lzdGVtLm91dC5wcmludGxuKCAib2R0LnRvU3RyaW5nKCk6ICIgKyBvZHQgKSA7ICAvLyBTdGFuZGFyZCBJU08gODYwMSBmb3JtYXQuCgkgICAgU3lzdGVtLm91dC5wcmludGxuKCAiemR0LnRvU3RyaW5nKCk6ICIgKyB6ZHQgKSA7ICAvLyBTdGFuZGFyZCBJU08gODYwMSBmb3JtYXQgd2lzZWx5IGV4dGVuZGVkIGJ5IGFwcGVuZGluZyB0aGUgbmFtZSBvZiB0aGUgdGltZSB6b25lIGluIHNxdWFyZSBicmFja2V0cy4KCSAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJvdXRwdXQ6ICIgKyBvdXRwdXQgKSA7ICAgICAgIC8vIEF1dG9tYXRpY2FsbHkgbG9jYWxpemVkIGZvcm1hdC4gCiAgICAKCX0KfQ==