时间戳(Timestamp)是一种表示特定时间的方式,通常以自 1970年1月1日 00:00:00 UTC(协调世界时) 起到某个时刻所经过的秒数或毫秒数为基础。这种表示方式广泛用于计算机系统中,特别是在记录事件发生的时间时,因为它是一个数字格式,便于存储、排序和计算。
以下是各种主流编程语言获取当前时间戳的代码示例。时间戳通常表示为自 1970 年 1 月 1 日 00:00:00 UTC 以来的秒数或毫秒数(称为 Unix 时间戳)。
1. JavaScript (Node.js/Browser)
JavaScript 中的时间戳通常是以 毫秒 为单位的。
const timestamp = Date.now()
console.log(timestamp)
2. Python
Python 中的时间戳可以使用 time
模块,它以 秒 为单位。
import time
timestamp = int(time.time())
print(timestamp)
如果需要 毫秒 为单位的时间戳:
timestamp = int(time.time() * 1000)
print(timestamp)
3. Java
Java 中的时间戳也以 毫秒 为单位。
public class Main {
public static void main(String[] args) {
long timestamp = System.currentTimeMillis();
System.out.println(timestamp);
}
}
4. C# (C Sharp)
在 C# 中获取当前 Unix 时间戳的代码,以 秒 为单位:
using System;
class Program {
static void Main() {
long timestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
Console.WriteLine(timestamp);
}
}
如需 毫秒 为单位:
long timestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
5. PHP
PHP 的时间戳默认是以 秒 为单位的。
$timestamp = time();
echo $timestamp;
如需获取以 毫秒 为单位的时间戳:
$timestamp = round(microtime(true) * 1000);
echo $timestamp;
6. Ruby
Ruby 的时间戳默认是 秒 为单位。
timestamp = Time.now.to_i
puts timestamp
如需获取 毫秒 为单位的时间戳:
timestamp = (Time.now.to_f * 1000).to_i
puts timestamp
7. Go
Go 的时间戳默认也是 秒 为单位。
package main
import (
"fmt"
"time"
)
func main() {
timestamp := time.Now().Unix()
fmt.Println(timestamp)
}
如需获取 毫秒 为单位的时间戳:
timestamp := time.Now().UnixNano() / int64(time.Millisecond)
fmt.Println(timestamp)
8. Swift
Swift 中的时间戳可以使用 Date
类,默认是 秒 为单位。
let timestamp = Int(Date().timeIntervalSince1970)
print(timestamp)
如需获取 毫秒 为单位的时间戳:
let timestamp = Int(Date().timeIntervalSince1970 * 1000)
print(timestamp)
9. Rust
Rust 中可以通过 std::time::SystemTime
获取时间戳,默认是 秒 为单位。
use std::time::{SystemTime, UNIX_EPOCH};
fn main() {
let start = SystemTime::now();
let since_the_epoch = start.duration_since(UNIX_EPOCH)
.expect("Time went backwards");
println!("{}", since_the_epoch.as_secs());
}
如需获取 毫秒 为单位:
println!("{}", since_the_epoch.as_millis());
10. Kotlin
Kotlin 可以通过 System.currentTimeMillis()
获取当前时间戳,默认是 毫秒 为单位。
fun main() {
val timestamp = System.currentTimeMillis()
println(timestamp)
}
如需获取 秒 为单位的时间戳:
val timestamp = System.currentTimeMillis() / 1000
println(timestamp)
11. Dart
Dart 的时间戳默认是 毫秒 为单位。
void main() {
var timestamp = DateTime.now().millisecondsSinceEpoch;
print(timestamp);
}
如需获取 秒 为单位的时间戳:
var timestamp = DateTime.now().millisecondsSinceEpoch ~/ 1000;
print(timestamp);
12. Shell (Linux Bash)
在 Linux Shell 脚本中,默认时间戳是以 秒 为单位。
timestamp=$(date +%s)
echo $timestamp
如需获取 毫秒 为单位的时间戳:
timestamp=$(($(date +%s%N)/1000000))
echo $timestamp