代码之家  ›  专栏  ›  技术社区  ›  user7910704

Java从日期值获取时间戳-“timestamp”不是已解析类型?

  •  0
  • user7910704  · 技术社区  · 7 年前

    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 回复  |  直到 7 年前
        1
  •  1
  •   MolecularMan    7 年前

    创建时间戳:

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

    1 day in future

        2
  •  0
  •   Abhishek Honey    7 年前

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

    输出为:

    今天是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));
        }
    }