或者,也许您知道如何解决此问题的更好方法。我以“YYYY-MM-DD HH:MM:SS”的格式获取日期,需要计算现在之间的时间差,然后以近似的增量:1分钟前,1小时前等等。
任何指针都非常感激:)
答案 0 :(得分:3)
您可以定义模式并将其解析为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(如果你重复使用它也可以是静态的) 第二行解析您的输入 第三行将其转换为毫秒。
答案 1 :(得分:1)
首先,您需要将日期字符串解析为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,了解有关使用哪种格式字符串的信息。
答案 2 :(得分:0)
您需要在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();