Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.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
在1993年1月4日星期一00:00:00 CET中用java解析字符串到日期_Java_Date - Fatal编程技术网

在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
的小错误。例:。