首頁 > 微信小程式 > 微信開發 > 微信公眾號開發--解析CreateTime

微信公眾號開發--解析CreateTime

零下一度
發布: 2017-05-27 13:46:17
原創
3389 人瀏覽過

從微信公眾平台的訊息介面指南中可以看出,每種類型的訊息定義中,都包含有CreateTime參數,它表示訊息的建立時間,如下圖所示:

上圖是訊息介面指南中4.1-文字訊息的定義。注意CreateTime的描述:訊息建立時間(整數),重點在於這是一個整數的時間,而不是我們大家所熟悉的類似"yyyy-MM-dd HH:mm:ss"的標準格式時間。 本文主要想介紹的就是微信訊息介面中定義的整數訊息建立時間CreateTime的意義,以及如何將CreateTime轉換成我們所熟悉的時間格式。

整數CreateTime的意義

#訊息介面中定義的訊息建立時間CreateTime ,它表示1970年1月1日0時0分0秒至訊息創建時所間隔的秒數,注意是間隔的秒數,不是毫秒數!

整數CreateTime的轉換

#在Java中,我們也常常會透過下面兩種方式取得long型別的時間,先上代碼:

/**
 * 演示Java中常用的获取long类型时间的两种方式
 */
public static void main(String[] args) {
	long longTime1 = System.currentTimeMillis();
	// 1373206143378
	System.out.println(longTime1);

	long longTime2 = new java.util.Date().getTime();
	// 1373206143381
	System.out.println(longTime2);
}
登入後複製

上面兩種取得long類型時間的方法是等價的,所獲得的結果表示當時時間距離1970年1月1日0時0分0秒0毫秒的毫秒數,注意這裡是毫秒數!那麼這裡取得到的long類型的時間如何轉換成標準格式的時間呢?方法如下:

/**
 * 演示Java中常用的获取long类型时间的两种方式
 */
public static void main(String[] args) {
	// 当前时间(距离1970年1月1日0时0分0秒0毫秒的毫秒数)
	long longTime = 1373206143378L;
	
	String stdFormatTime = formatTime(longTime);
	// 输出:2013-07-07 22:09:03
	System.out.println(stdFormatTime);
}

/**
 * 将long类型的时间转换成标准格式(yyyy-MM-dd HH:mm:ss)
 * 
 * @param longTime
 * @return
 */
public static String formatTime(long longTime) {
	DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	return format.format(new Date(longTime));
}
登入後複製

上面示範了將一個long類型的時間轉換成標準格式的時間,只是簡單的運用了SimpleDateFormat類,比較好懂的。那麼再回到今天的主題上來,如何將CreateTime轉換成標準格式的時間。

微信訊息介面中的CreateTime表示距離1970年的秒數,而System.currentTimeMillis()表示距離1970年的毫秒數,它們之間的換算就相當於:1秒=1000毫秒,即將CreateTime乘以1000,就變成了距離1970年的毫秒數了,就可以用上面的formatTime()方法來處理了,是不是很簡單呢?

下面,我還是單另封裝一個方法,用於將微信訊息中的整型的訊息建立時間CreateTime轉換成標準格式的時間,如下:

/**
 * 将微信消息中的CreateTime转换成标准格式的时间(yyyy-MM-dd HH:mm:ss)
 * 
 * @param createTime 消息创建时间
 * @return
 */
public static String formatTime(String createTime) {
	// 将微信传入的CreateTime转换成long类型,再乘以1000
	long msgCreateTime = Long.parseLong(createTime) * 1000L;
	DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	return format.format(new Date(msgCreateTime));
}
登入後複製

【相關推薦】

1. 微信公眾號平台原始碼下載

2. 分享微信公眾號開髮刷卡支付的實例教學

3. 微信開發之介紹CreateTime

#

以上是微信公眾號開發--解析CreateTime的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板