在1993年1月4日星期一00:00:00 CET中用java解析字符串到日期
我想用以下代码将用户输入解析为日期:在1993年1月4日星期一00:00:00 CET中用java解析字符串到日期,java,date,Java,Date,我想用以下代码将用户输入解析为日期: public class AlterBerechnen { public static String date; public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Wann wurden sie geboren (DD.MM.
public class AlterBerechnen {
public static String date;
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Wann wurden sie geboren (DD.MM.YYYY) :");
SimpleDateFormat dateformat = new SimpleDateFormat("dd.MM.YYYY");
Date geb = null;
try {
try {
date = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
geb = dateformat.parse(date);
} catch (ParseException e) {
e.printStackTrace();
System.out.println("Hier ist eine fehlangabe erfolgt!!!!");
}
System.out.println(geb);
}}
但是如果我进入1993年12月17日,我会得到1993年1月4日星期一00:00:00 CET。
请帮帮我,我在网上读了两个小时,这是我找到的解决方案,但没有用。
顺致敬意,
Nils参见javadoc:有一个很好的表格解释了格式中每个字符的含义。“Y”表示周年,而“Y”表示年。试试:
SimpleDateFormat(“dd.MM.yyy”)
@Tunaki非常感谢,你是今晚我的英雄。区分大小写,我喜欢这样…如果输入错误,仍然打印空。在最后一行打印geb之前,您应该检查null。@Nils请在过帐之前搜索StackOverflow。你会发现关于这个主题的数百个现有问题和答案。通过研究给出的示例,或者复制/粘贴这样的代码,您可能已经发现了大小写yyy
的小错误。例:。