fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. import java.time.*;
  8. import java.time.format.*;
  9. import java.time.temporal.*;
  10.  
  11. /* Name of the class has to be "Main" only if the class is public. */
  12. class Ideone
  13. {
  14. public static void main (String[] args) throws java.lang.Exception
  15. {
  16.  
  17. String input = "1487615921387-0300";
  18.  
  19. String inputCount = input.substring ( 0 , 13 ); // zero-based index counting.
  20. long count = Long.parseLong ( inputCount );
  21. Instant instant = Instant.ofEpochMilli ( count );
  22.  
  23. String inputOffset = input.substring ( 13 );
  24. ZoneOffset offset = ZoneOffset.of ( inputOffset );
  25.  
  26. OffsetDateTime odt = instant.atOffset ( offset );
  27.  
  28. System.out.println ( "input: " + input );
  29. System.out.println ( "inputMillis: " + inputCount );
  30. System.out.println ( "inputOffset: " + inputOffset );
  31. System.out.println ( "count: " + count );
  32. System.out.println ( "instant.toString(): " + instant );
  33. System.out.println ( "odt.toString(): " + odt );
  34.  
  35. }
  36. }
Success #stdin #stdout 0.14s 4386816KB
stdin
Standard input is empty
stdout
input: 1487615921387-0300
inputMillis: 1487615921387
inputOffset: -0300
count: 1487615921387
instant.toString(): 2017-02-20T18:38:41.387Z
odt.toString(): 2017-02-20T15:38:41.387-03:00