Http グリニッジ標準時とミリ秒の相互変換 EEE, dd MMM y HH:mm:ss 'GMT'
2022-03-02 12:10:04
NoHttpオープンソースのアドレスです。 https://github.com/yanzhenjie/NoHttp
NoHttpの詳細なドキュメントが公開されました!知りたいことは全てそこにあります。
<ブロッククオート著作権について この記事はZhenjie Yan氏のブログからの転載であることをご了承ください。 http://blog.yanzhenjie.com
前書き
このブログを書いているのは、久しぶりに
NoHttp
フォーマットされたHttpレスポンスヘッダやリクエストヘッダのData関連フィールドに問題が発生したとき、結局アルゴリズムをまとめることにしました。
の2つのコンセプトを明確にしています。
1. グリニッジ標準時(出版局によってはグリニッジGreenwhichと呼ぶ)のフォーマット: "EEE, dd MMM y HH:MM:ss 'GMT'"
2.ミリ秒のフォーマット。1464709616971
グリニッジ(EEE, dd MMM y HH:mm:ss 'GMT')のミリ秒への変換
public static final String FORMAT_HTTP_DATA = "EEE, dd MMM y HH:mm:ss 'GMT'";
public static final TimeZone GMT_TIME_ZONE = TimeZone.getTimeZone("GMT");
/**
* Parsing the TimeZone of time in milliseconds.
*
* @param gmtTime GRM Time, Format such as: {@value #FORMAT_HTTP_DATA}.
* @return The number of milliseconds from 1970.1.1.
* @throws ParseException if an error occurs during parsing.
*/
public static long parseGMTToMillis(String gmtTime) throws ParseException {
SimpleDateFormat formatter = new SimpleDateFormat(FORMAT_HTTP_DATA, Locale.US);
formatter.setTimeZone(GMT_TIME_ZONE);
Date date = formatter.parse(gmtTime);
return date.getTime();
}
グリニッジ(EEE, dd MMM y HH:mm:ss 'GMT' )に変換されたミリ秒。
public static final String FORMAT_HTTP_DATA = "EEE, dd MMM y HH:mm:ss 'GMT'";
public static final TimeZone GMT_TIME_ZONE = TimeZone.getTimeZone("GMT");
/**
* Parsing the TimeZone of time from milliseconds.
*
* @param milliseconds the number of milliseconds from 1970.1.1.
* @return GRM Time, Format such as: {@value #FORMAT_HTTP_DATA}.
*/
public static String formatMillisToGMT(long milliseconds) {
Date date = new Date(milliseconds);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(FORMAT_HTTP_DATA, Locale.US);
simpleDateFormat.setTimeZone(GMT_TIME_ZONE);
return simpleDateFormat.format(date);
}
1つのクラスHttpDateに統合
public final class HttpDateTime {
public static final String FORMAT_HTTP_DATA = "EEE, dd MMM y HH:mm:ss 'GMT'";
public static final TimeZone GMT_TIME_ZONE = TimeZone.getTimeZone("GMT");
/**
* Parsing the TimeZone of time in milliseconds.
*
* @param gmtTime GRM Time, Format such as: {@value #FORMAT_HTTP_DATA}.
* @return The number of milliseconds from 1970.1.1.
* @throws ParseException if an error occurs during parsing.
*/
public static long parseGMTToMillis(String gmtTime) throws ParseException {
SimpleDateFormat formatter = new SimpleDateFormat(FORMAT_HTTP_DATA, Locale.US);
formatter.setTimeZone(GMT_TIME_ZONE);
Date date = formatter.parse(gmtTime);
return date.getTime();
}
/**
* Parsing the TimeZone of time from milliseconds.
*
* @param milliseconds the number of milliseconds from 1970.1.1.
* @return GRM Time, Format such as: {@value #FORMAT_HTTP_DATA}.
*/
public static String formatMillisToGMT(long milliseconds) {
Date date = new Date(milliseconds);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(FORMAT_HTTP_DATA, Locale.US);
simpleDateFormat.setTimeZone(GMT_TIME_ZONE);
return simpleDateFormat.format(date);
}
/**
* Returned the local number of milliseconds after 100.
*
* @return Long format time.
*/
public static long getMaxExpiryMillis() {
return System.currentTimeMillis() + 1000L * 60L * 60L * 24L * 365L * 100L;
}
}
最後の方法は、100年分のミリ秒の時間を求めるものですが、これを間違えた学生もいました。問題は、数字の後ろにLが付かないものがあり、intの限界を超えてしまうため、予想より小さな値が出てしまうことです。
Androidオープンソース・ネットワーキング・フレームワークNoHttpへようこそ:その
https://github.com/yanzhenjie/NoHttp
オンライン・ライブ・ビデオとコードのダウンロードは
http://pan.baidu.com/s/1miEOtwG
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ハートビート・エフェクトのためのHTML+CSS
-
HTML ホテル フォームによるフィルタリング
-
HTML+cssのボックスモデル例(円、半円など)「border-radius」使いやすい
-
HTMLテーブルのテーブル分割とマージ(colspan, rowspan)
-
ランダム・ネームドロッパーを実装するためのhtmlサンプルコード
-
Html階層型ボックスシャドウ効果サンプルコード
-
QQの一時的なダイアログボックスをポップアップし、友人を追加せずにオンラインで話す効果を達成する方法
-
sublime / vscodeショートカットHTMLコード生成の実装
-
HTMLページを縮小した後にスクロールバーを表示するサンプルコード
-
html のリストボックス、テキストフィールド、ファイルフィールドのコード例