Golang による Unix エポック時間の取得

GolangGolangBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

Epoch 実験は、Unix エポック以降の秒数、ミリ秒数、またはナノ秒数を取得する能力をテストするための Golang 実験です。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL go(("Golang")) -.-> go/AdvancedTopicsGroup(["Advanced Topics"]) go/AdvancedTopicsGroup -.-> go/epoch("Epoch") subgraph Lab Skills go/epoch -.-> lab-15471{{"Golang による Unix エポック時間の取得"}} end

Epoch

この実験で解くべき問題は、Unix エポック以降の秒数、ミリ秒数、またはナノ秒数を計算できる Golang プログラムを書くことです。

この実験を完了するには、Golang の基本的な理解と次の要件が必要です。

  • Golang の time パッケージに慣れていること。
  • time パッケージの UnixUnixMilli、および UnixNano 関数の使い方を知っていること。
$ go run epoch.go
2012-10-31 16:13:58.292387 +0000 UTC
1351700038
1351700038292
1351700038292387000
2012-10-31 16:13:58 +0000 UTC
2012-10-31 16:13:58.292387 +0000 UTC

## 次に、別の時間関連のタスクである時間の解析とフォーマットについて見ていきましょう。

以下に完全なコードがあります。

// プログラムで一般的な要件は、[Unix エポック](https://en.wikipedia.org/wiki/Unix_time) 以降の秒数、ミリ秒数、またはナノ秒数を取得することです。
// これは Go で行う方法です。

package main

import (
	"fmt"
	"time"
)

func main() {

	// `time.Now` を `Unix`、`UnixMilli` または `UnixNano` とともに使用して、
	// Unix エポック以降の経過時間をそれぞれ秒、ミリ秒、またはナノ秒で取得します。
	now := time.Now()
	fmt.Println(now)

	fmt.Println(now.Unix())
	fmt.Println(now.UnixMilli())
	fmt.Println(now.UnixNano())

	// エポック以降の整数秒またはナノ秒を対応する `time` に変換することもできます。
	fmt.Println(time.Unix(now.Unix(), 0))
	fmt.Println(time.Unix(0, now.UnixNano()))
}

まとめ

Epoch 実験は、Unix エポック以降の秒数、ミリ秒数、またはナノ秒数を取得する能力をテストする Golang 実験です。この実験を完了することで、Golang の time パッケージと UnixUnixMilli、および UnixNano 関数の使い方をより深く理解することができます。