Android获取当前UTC时间[重复]

作者:编程家 分类: android 时间:2025-12-18

使用Android设备获取当前的UTC时间可以通过System.currentTimeMillis()方法实现。这个方法返回的是从1970年1月1日0时0分0秒(UTC)到当前时间的毫秒数。然后可以通过SimpleDateFormat类将这个毫秒数转换为可读性较好的日期时间格式。

下面是一个例子,展示了如何使用代码获取当前的UTC时间并将其显示在Android应用程序中:

java

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.TimeZone;

public class MainActivity extends AppCompatActivity {

private TextView timeTextView;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

timeTextView = findViewById(R.id.timeTextView);

// 获取当前的UTC时间

long currentTimeMillis = System.currentTimeMillis();

// 创建SimpleDateFormat对象,设置日期时间格式

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

sdf.setTimeZone(TimeZone.getTimeZone("UTC"));

// 将毫秒数转换为日期时间字符串

String utcTime = sdf.format(new Date(currentTimeMillis));

// 在TextView中显示UTC时间

timeTextView.setText("当前的UTC时间是:" + utcTime);

}

}

在这个例子中,我们首先在布局文件中添加了一个TextView控件来显示UTC时间。然后在MainActivity类的onCreate()方法中,我们使用System.currentTimeMillis()方法获取当前的UTC时间的毫秒数。接下来,我们创建了一个SimpleDateFormat对象,并将其设置为UTC时间的格式。然后,我们使用format()方法将毫秒数转换为日期时间字符串,并将其显示在TextView中。

示例代码

接下来,我们将看到一个示例代码,演示如何在Android应用程序中使用上述方法获取当前的UTC时间并显示在界面上。

xml

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingLeft="16dp"

android:paddingTop="16dp"

android:paddingRight="16dp"

android:paddingBottom="16dp"

tools:context=".MainActivity">

android:id="@+id/timeTextView"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="20sp"

android:textStyle="bold"

android:textColor="@android:color/black" />

java

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

import android.widget.TextView;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.TimeZone;

public class MainActivity extends AppCompatActivity {

private TextView timeTextView;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

timeTextView = findViewById(R.id.timeTextView);

// 获取当前的UTC时间

long currentTimeMillis = System.currentTimeMillis();

// 创建SimpleDateFormat对象,设置日期时间格式

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

sdf.setTimeZone(TimeZone.getTimeZone("UTC"));

// 将毫秒数转换为日期时间字符串

String utcTime = sdf.format(new Date(currentTimeMillis));

// 在TextView中显示UTC时间

timeTextView.setText("当前的UTC时间是:" + utcTime);

}

}

运行结果

运行这个例子,我们将在应用程序界面上看到类似下面的输出:

当前的UTC时间是:2021-01-01 08:00:00

这样,我们就成功地在Android应用程序中获取了当前的UTC时间并将其显示出来。

通过上述代码示例,我们学习了如何在Android应用程序中获取当前的UTC时间并将其显示在界面上。这对于需要在全球范围内进行时间相关操作的应用程序非常有用。无论用户身处何地,我们都可以使用UTC时间来进行统一的时间处理。