Java从日期值中获取时间戳 - "时间戳"是不是已解决的类型?

时间:2017-09-20 11:38:49

标签: java jdbc timestamp

我是Java开发新手 - 我正在尝试转换日期值 - " 2017-09-14"到时间戳如" 1355759900000"。

我试图像这样进行转换

Date starting_time = (Date) obj.get("assessment date");
java.sql.Timestamp timeStampDate = new Timestamp(starting_time.getCreatedTime().getTime());
System.out.println("Today is " +timeStampDate);

但它告诉我Timestamp不是已解决的类型。

我还需要在创建结束日期的位置进行计算 - 从开始日期开始的将来一天。

在此之后让它工作

//get start time date
Date starting_time = (Date) obj.get("assessment date");
//get start time date

//get end time date
Calendar c = Calendar.getInstance(); 
c.setTime(starting_time); 
c.add(Calendar.DATE, 1);
java.util.Date ending_time = c.getTime();
//get end time date

long starting_time_timestamp = new Timestamp(starting_time.getTime()).getTime();
long ending_time_timestamp = new Timestamp(ending_time.getTime()).getTime();

2 个答案:

答案 0 :(得分:1)

创建时间戳:

Timestamp timestamp = new Timestamp(date.getTime());

1 day in future

答案 1 :(得分:0)

你如何转换" 2017-09-14"到时间戳如" 1355759900000"。

我没有得到这个,但这里是你可以使用的代码。

输出是:

今天是2015-03-31 00:00:00.0

字符串时间戳:31032015000000

import java.io.IOException;
import java.sql.Date;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;

public class test {

    public static void main(String[] args) throws IOException, InterruptedException {
        String str="2015-03-31";
        Date starting_time = Date.valueOf(str);
        java.sql.Timestamp timeStampDate = new Timestamp(starting_time.getTime());
        System.out.println("Today is " + timeStampDate);
        SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyyHHmmss");
        System.out.println("String timestamp: "+sdf.format(timeStampDate));
    }
}