Android 获取当前时间格式化及星期几
在Android开发中,获取当前时间并格式化显示是一个常见的需求。本文将介绍如何获取当前时间,并将其格式化为包含星期几的字符串。
获取当前时间
在Android中,可以使用java.util.Calendar
类来获取当前时间。以下是获取当前时间的代码示例:
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
格式化时间
获取到当前时间后,可以使用java.text.SimpleDateFormat
类来格式化时间。以下是将时间格式化为"yyyy-MM-dd HH:mm:ss"的代码示例:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = sdf.format(calendar.getTime());
获取星期几
要获取当前时间对应的星期几,可以使用Calendar
类的get
方法。以下是获取星期几的代码示例:
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
String[] daysOfWeek = {"", "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
String dayOfWeekStr = daysOfWeek[dayOfWeek];
完整代码示例
以下是将上述步骤整合到一起的完整代码示例:
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
String[] daysOfWeek = {"", "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
String dayOfWeekStr = daysOfWeek[dayOfWeek];
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = sdf.format(calendar.getTime());
TextView textView = findViewById(R.id.text_view);
textView.setText("当前时间:" + formattedDate + " " + dayOfWeekStr);
}
}
旅行图
以下是获取当前时间并格式化显示的旅行图:
journey
A[开始] --> B[获取当前时间]
B --> C[格式化时间]
C --> D[获取星期几]
D --> E[显示结果]
序列图
以下是获取当前时间并格式化显示的序列图:
sequenceDiagram
participant A as 主线程
participant B as Calendar
participant C as SimpleDateFormat
A->>B: 获取当前时间
B->>C: 格式化时间
C->>A: 返回格式化后的时间字符串
A->>B: 获取星期几
B->>A: 返回星期几字符串
A->>A: 显示结果
通过上述代码示例和旅行图、序列图,我们可以清晰地了解在Android中获取当前时间并格式化显示的整个流程。希望本文对您有所帮助。