有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java时间戳格式不显示不同的值

我正试图打印出一个日期/时间列表。dat文件和下面的代码片段,但它总是有相同的输出,我不知道为什么

SimpleDateFormat TimeStampFormat = new SimpleDateFormat("yyyy:dd:hh:mm:ss:");
long measurement = 0;       


for (i=0; i<MeasurementLength; i++ ){
    databyte = ReadFilterInputPort();
    measurement = measurement | (databyte & 0xFF);  
   if (i != MeasurementLength-1)    
        measurement = measurement << 8;             
} // for

TimeStampA.setTimeInMillis(measurementA);   
System.out.println(measurementA);
System.out.printf("%-22s\n",TimeStampFormat.format(TimeStampA.getTime()));

例如,几行的输出为:

(输入) 1300828035071

(产出) 2011:22:05:07:15

(输入)1300828035073

(输出)2011:22:05:07:15

我是否做错了什么,或者这是给定输入的正确输出


共 (1) 个答案

  1. # 1 楼答案

    试试下面的代码

       try {
                long measureA = System.currentTimeMillis();// You can assign your exact date which is in long format
    
                Date date = new Date(measureA); 
    
                SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy hh:mm:ss zzz"); 
    
                System.out.println(sdf.format(date)); 
    
                sdf = new SimpleDateFormat("E MMM dd yyyy"); 
    
                System.out.println(sdf.format(date));
    
            }catch(Exception e)
            {
                e.printStackTrace();
    
            }
    

    您可以根据需要更改格式字符串