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

Java 时间戳格式不显示不同的值,java,Java,我试图用下面的代码片段从一个.dat文件打印出一个日期/时间列表,但它总是有相同的输出,我不知道为什么 SimpleDateFormat TimeStampFormat = new SimpleDateFormat("yyyy:dd:hh:mm:ss:"); long measurement = 0; for (i=0; i<MeasurementLength; i++ ){ databyte = ReadFilterInputPort(); measur

我试图用下面的代码片段从一个.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()));
SimpleDateFormat timestamformat=新的SimpleDateFormat(“yyyy:dd:hh:mm:ss:”);
长测量=0;
对于(i=0;i请尝试以下代码

   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();

        }

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

measurementA很长,如果这会造成差异,那么创建
Date
对象如何,例如
新日期(measurementA)
然后用
SimpleDateFormat
?show
timestameFormat#format
方法按您喜欢的方式格式化。这与我的结果相同。问题是我不知道日期/时间应该是什么,但奇怪的是,每次测量值都略有不同,它们都是一样的。是不是因为c太小了挂起注册?我没有弄清楚。让我问一个问题,你正在以长格式获取时间,并且在变量measurementA中存储长日期。我是对的吗?或者你不确定以哪种格式获取日期?你是对的。我将其作为长格式获取,然后将其存储在measurementA中。我已经修改了我的代码。请参阅。我已经初始化了我测量当前时间的变量。您需要根据需要更改初始化。将传入日期指定给变量,即可。