我的字符串发布日期如下:
2011-03-27T09:39:01.607
并且有当前日期。
我想以以下形式获得这两个日期之间的差异:
2 days ago
1 minute ago etc..
取决于发布日期。
我使用此代码将发布日期转换为毫秒:
public long Date_to_MilliSeconds(int day, int month, int year, int hour, int minute) {
Calendar c = Calendar.getInstance();
c.set(year, month, day, hour, minute, 00);
return c.getTimeInMillis();
}
当前日期:long now = System.currentTimeMillis();
并计算差异:
String difference = (String) DateUtils.getRelativeTimeSpanString(time,now, 0);
但它返回像May 1 , 1970
或者其他的东西 ..
如何获取发布日期和当前日期之间的差异。
您可以使用getRelativeTimeSpanString() http://developer.android.com/reference/android/text/format/DateUtils.html#getRelativeTimeSpanString%28long,%20long,%20long%29。它返回一个类似“1 分钟前”的字符串。这是一个真实的简单示例,说明应用程序已经运行了多长时间。
private long mStartTime;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mStartTime = System.currentTimeMillis();
}
public void handleHowLongClick(View v) {
CharSequence cs = DateUtils.getRelativeTimeSpanString(mStartTime);
Toast.makeText(this, cs, Toast.LENGTH_LONG).show();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)