当前位置: 首页 > 知识库问答 >
问题:

LocalTime开始日期

文华美
2023-03-14

我正在尝试将date实例转换为localtime实例。

// Create the Date
Date date = format.parse("2011-02-18 05:00:00.0");    

// Convert to Calendar
Calendar cal = Calendar.getInstance();
cal.setTime(date);

// Convert Calendar to LocalTime
Instant instant = Instant.ofEpochMilli(cal.getTimeInMillis());
LocalTime convert = LocalDateTime.ofInstant(instant, ZoneId.systemDefault()).toLocalTime();

我没有得到编译器错误,但localtime实例值错误。

我认为它不起作用,因为date将时间存储在fasttime中,而不是cdate中。

我使用的是JDK1.8版。

共有1个答案

王刚毅
2023-03-14

您的输入实际上是localdatetime。简单地将其解析为localdatetime,然后从中获取localtime会简单得多。没有需要担心的时区,没有多少有点遗留的类(尽可能避免datecalendar...)

import java.time.*;
import java.time.format.*;
import java.util.*;

public class Test {

    public static void main(String[] args) {
        DateTimeFormatter formatter =
            DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S", Locale.US);

        String text = "2011-02-18 05:00:00.0";
        LocalDateTime localDateTime = LocalDateTime.parse(text, formatter);
        LocalTime localTime = localDateTime.toLocalTime();
        System.out.println(localTime);
    }
}
 类似资料:
  • 描述 (Description) 此函数在列表上下文中转换EXPR指定的时间,返回一个九元素数组,其中包含分析当前本地时区的时间。 该数组的元素是 - # 0 1 2 3 4 5 6 7 8 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); 如果

  • localtime(取得当地目前时间和日期) 相关函数 time, asctime, ctime, gmtime 表头文件 #include<time.h> 定义函数 struct tm *localtime(const time_t * timep); 函数说明 localtime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果由结构tm返回。

  • 该方法用于给出系统中的本地日期和时间。 语法 (Syntax) localtime() 参数 (Parameters) None 返回值 (Return Value) 该方法用于给出系统中的本地日期和时间。 例如 (For example) -module(helloworld). -export([start/0]). start() -> io:fwrite("~p~n",[er

  • localtime 取得当地目前时间和日期 相关函数 time, asctime, ctime, gmtime 表头文件 #include<time.h> 定义函数 struct tm *localtime(const time_t *timep); 函数说明 localtime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果由结构tm返回。

  • 我在本教程的帮助下制作了日历:http://droidwalk.blogspot.it/2012/11/android-calendar-sample.html ..但是这个日历从星期天开始,我想从星期一开始。。我试图改变价值观​​在函数中设置对象GregorianCalendar,但它不会给出所需的结果。本周从周一开始,但在某些月份,我们失去了第一周。我发现了一个类似的问题:从周一开始制作日历,

  • 问题内容: 我有当前日期,还有一个常数,它指示星期几。我想基于该常数获取一周的开始日期。如果我将一周的第一天硬编码为星期一(或其他任何东西),那么这很简单。但是一周的第一天一直在变化。因此,我不想在每次更改第一天时都更改代码。 这是我尝试使用Java的Calendar的方法: 我想获取一周的开始日期。上面的函数返回星期的第一天,并且星期开始日期被硬编码为星期六。每当星期开始日期以上的要求发生变化时