或者,也许你知道如何解决这个问题的更好方法。我以“YYYY-MM-DD HH:MM:SS”的格式获取日期,需要计算现在之间的时间差,然后以近似的增量:1分钟前,1小时前等。
任何指针非常赞赏:)
您可以定义模式并将其解析为Java Date Object:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = format.parse("your string goes here");
long timestamp = date.getTime();
第一行定义了SimpleDateFormat(如果你重复使用它也可以是静态的)第二行解析你的输入第三行将它转换为毫秒。
首先,您需要将日期字符串解析为Date
,然后从中获取时间戳:
final SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");
final String myDateString = "someDateString";
final Date date = dateFormat.parse(myDateString);
final long timestamp = date.getTime();
有关要使用的格式字符串的信息,请查看SimpleDateFormat
javadocs。
您需要在SimpleDateFormat的帮助下将您的字符串转换为java.util.Date(例如参见 - https://stackoverflow.com/search?q=simpledateformat+%5Bjava%5D),然后获取自1970年1月1日00:00:00 GMT以来的毫秒数。
Date dt = new Date();
long unixTimeStamp = dt.getTime();