Java 从文本文件中读取日期并输入对象日期
我必须从一个文件中读取一个日期,该日期是这样写在这个文件上的:Java 从文本文件中读取日期并输入对象日期,java,date,Java,Date,我必须从一个文件中读取一个日期,该日期是这样写在这个文件上的:dd/MM//yy,但当我读取时,我得到的值完全不同。例如:17/11/10变成了周一2010年1月4日00:00:00 CET。值不同,为什么 这是我使用的代码: SimpleDateFormat sdf=new SimpleDateFormat("dd/MM/YY"); Date dat=sdf.parse(reader.readLine()); 年份的占位符是yy,而不是yy。但是,我不知道它为什么会给出这样的结果。年的占位符
dd/MM//yy
,但当我读取时,我得到的值完全不同。例如:17/11/10
变成了周一2010年1月4日00:00:00 CET
。值不同,为什么
这是我使用的代码:
SimpleDateFormat sdf=new SimpleDateFormat("dd/MM/YY");
Date dat=sdf.parse(reader.readLine());
年份的占位符是
yy
,而不是yy
。但是,我不知道它为什么会给出这样的结果。年的占位符是yy
,而不是yy
。但是我不知道它为什么会给出这样的结果。你能在问题中包括你的实际代码吗,因为我怀疑它的dd/MM//yy
和dd/MM/yy
是无效的
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");
String text = "17/11/10";
System.out.println(sdf.parse(text));
印刷品
Wed Nov 17 00:00:00 GMT 2010
你能在问题中包括你的实际代码吗?因为我怀疑它的
dd/MM//yy
和dd/MM/yy
无效
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");
String text = "17/11/10";
System.out.println(sdf.parse(text));
印刷品
Wed Nov 17 00:00:00 GMT 2010
将
MM
更改为MMM
时出现parseException错误,请尝试编辑您的问题,以包含reader.ReadLine()返回的内容。也许不是你想象的那样。好吧,我解决了。我将YY
改为YY
。现在可以工作了,而在2011年,选择Date
和SimpleDateFormat
,对于2017年或以后阅读此问题的人来说,这些类早已过时。相反,我推荐java.time
(也称为JSR-310)中的LocalDate
和DateTimeFormatter
。现代类通常使用起来更方便,并且LocalDate
建模了一个没有时间的日期,这就是您在这里需要的。我在将MM
更改为MMM
时遇到一个parseException错误,请尝试编辑您的问题,以包含reader.ReadLine()
返回的内容。也许不是你想象的那样。好吧,我解决了。我将YY
改为YY
。现在可以工作了,而在2011年,选择Date
和SimpleDateFormat
,对于2017年或以后阅读此问题的人来说,这些类早已过时。相反,我推荐java.time
(也称为JSR-310)中的LocalDate
和DateTimeFormatter
。现代类通常使用起来更方便,而且LocalDate
建模的日期没有一天中的时间,这正是您在这里需要的。部分解释是大写字母YY
表示基于周的年份(仅对周数有用)。部分解释是大写字母YY
表示基于周的年份(仅适用于周数)。