且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

将毫秒字符串转换为Java中的日期

更新时间:2023-11-06 18:42:46


  double tempo = Double.parseDouble(z); 


为什么要解析你的 / code> c $ c> $ c> c $ c $? b

尝试使用 Long.parseLong

  
DateFormat formatter = new SimpleDateFormat(dd / MM / yyyy);

long milliSeconds = Long.parseLong(x);
System.out.println(milliSeconds);

日历calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
System.out.println(formatter.format(calendar.getTime()));


i have a String x = "1086073200000" . This is basically millisecond which I need to convert to a Date.

To convert i am using

DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

long tempo1=Long.parseLong(x);
System.out.println(tempo1);  // output is 86073200000 instead of the whole thing
long milliSeconds=1346482800000L;

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
System.out.println(formatter.format(calendar.getTime())); 

The problem is when i convert the string x to long , some digits go away due to the limit on the size of long.

How do I preserve the entire String.

THanks.

double tempo=Double.parseDouble(z);

Why are you parsing your String which is supposed to be a Long as a Double?

Try using Long.parseLong:

String x = "1086073200000"

DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

long milliSeconds= Long.parseLong(x);
System.out.println(milliSeconds);

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
System.out.println(formatter.format(calendar.getTime()));