ホームページ >WeChat アプレット >WeChatの開発 >WeChat パブリック アカウントの開発 -- CreateTime の分析

WeChat パブリック アカウントの開発 -- CreateTime の分析

零下一度
零下一度オリジナル
2017-05-27 13:46:173406ブラウズ

WeChat パブリック プラットフォームのメッセージ インターフェイス ガイドからわかるように、以下の図に示すように、各種類のメッセージ定義には、メッセージの作成時間を表す CreateTime パラメーターが含まれています。

上の図は、メッセージ インターフェイス ガイドの 4.1-Text メッセージの定義です。 CreateTime: メッセージ作成時刻 (

integer

) の説明に注意してください。重要なのは、これは整数の時刻であり、私たちがよく使う「yyyy-MM-dd HH:mm:ss」のような標準ではないということです。フォーマット時間に精通しています。 この記事では主に、WeChat メッセージ インターフェイスで定義されている整数のメッセージ作成時間 CreateTime の意味と、CreateTime を使い慣れた時間形式に変換する方法を紹介したいと思います。

整数 CreateTime の意味

メッセージ インターフェイスで定義された

メッセージ作成時間 CreateTime。これは、1970 年 1 月 1 日の 0:00:00 から、メッセージが作成された時刻までの秒数を表します。メッセージが作成されます

、ミリ秒数ではなく、間隔の秒数であることに注意してください。

整数 CreateTime の変換

Java では、次の 2 つのメソッドを通じて長いタイプ時間を取得することがよくあります。コードから始めましょう:

/**
 * 演示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);
}

長いタイプ時間を取得する上記の 2 つの方法は、価格、得られた結果は、1970 年 1 月 1 日 0:00:00,000 からのミリ秒数

を表します。これはミリ秒数であることに注意してください。では、ここで得られた長いタイプの時間を標準形式の時間に変換するにはどうすればよいでしょうか?メソッドは次のとおりです。

/**
 * 演示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));
}
上記は、長い型時刻を標準形式に変換する方法を示しています。これは、比較的理解しやすい SimpleDateFormat クラスを使用しているだけです。さて、今日のトピック、CreateTime を標準形式の時刻に変換する方法に戻ります。 WeChat メッセージ インターフェイスの

CreateTime は 1970 年からの秒数を表し、System.currentTimeMillis() は 1970 年からのミリ秒数を表します

。これらの間の変換は、1 秒 = 1000 ミリ秒と同等です。 CreateTime に 1000 を掛けると、1970 年からのミリ秒数になります。上記の formatTime() メソッドを使用して処理できます。非常に簡単ではないでしょうか。 次に、次のように、WeChat メッセージの整数メッセージ作成時間 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.

WeChat パブリック アカウント プラットフォームのソース コードのダウンロード

2. クレジットカード決済用の WeChat パブリックアカウントの開発に関するサンプルチュートリアルを共有します

3. WeChat 開発の概要

以上がWeChat パブリック アカウントの開発 -- CreateTime の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。