Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用于存储1970-01-01之前日期的数据类型_Java_Date_Jodatime - Fatal编程技术网

Java 用于存储1970-01-01之前日期的数据类型

Java 用于存储1970-01-01之前日期的数据类型,java,date,jodatime,Java,Date,Jodatime,可能重复: 我正在寻找一个标准的解决方案来存储一个值可能早于1970-01-01的日期。欢迎使用Joda基于时间的解决方案 例如,我想存储一张专辑“Frank Sinatra之声”的发行日期,即1946年3月4日 DateTime dt = new DateTime(1946, 3, 4, 0, 0); 调用dt.getMillis()只会产生一个负数 我想储存一张专辑《弗兰克·西纳特拉之声》的发行日期,1946年3月4日 DateTime dt = new DateTime(1946, 3

可能重复:

我正在寻找一个标准的解决方案来存储一个值可能早于1970-01-01的日期。欢迎使用Joda基于时间的解决方案

例如,我想存储一张专辑“Frank Sinatra之声”的发行日期,即1946年3月4日

DateTime dt = new DateTime(1946, 3, 4, 0, 0);
调用
dt.getMillis()
只会产生一个负数

我想储存一张专辑《弗兰克·西纳特拉之声》的发行日期,1946年3月4日

DateTime dt = new DateTime(1946, 3, 4, 0, 0);
印刷品

1948-03-04

LocalDate可用于从公元1年或公元1年起的任何年份,默认情况下采用公历。

@Keppil Nope。答案中没有关于如何使用Joda Time的信息,问题也没有。那么是什么阻止了你使用Joda Time呢?1970年之前和之后的最近日期没有什么区别。我看这里没有太多问题。即使是
new java.util.Gregoriacalendar 1946,2,4)
也能做到。@NikitaVolkov:是的,再看看。
System.out.println(new org.joda.time.DateTime(1946,3,4,0,0))
你能解释一下为什么
LocalDate
DateTime
更合适吗?LocalDate只是一个日期。DateTime是一个日期和时间,如果您还想存储时间,它更合适。假设一天中的某个名义时间比有用的IMHO更具误导性。