Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.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 删除特殊符号/分隔符,例如点、逗号、-、超出整数_Java_User Interface_Symbols - Fatal编程技术网

Java 删除特殊符号/分隔符,例如点、逗号、-、超出整数

Java 删除特殊符号/分隔符,例如点、逗号、-、超出整数,java,user-interface,symbols,Java,User Interface,Symbols,我想让这个人写上他/她的生日,然后我想把它和圆周率的数字进行比较。 但我希望这个计划是灵活的。所以约会不应该只是这样 daymonthyear(13091975),但也类似于day.month.year(1975年9月13日)或day-month-year(1975年9月13日) 我已经找到了一个主意,但它不起作用 String sep = ""; String geb = nf_datum.getText(); geb = geb.replaceAll(".", Matcher.quoteRe

我想让这个人写上他/她的生日,然后我想把它和圆周率的数字进行比较。 但我希望这个计划是灵活的。所以约会不应该只是这样 daymonthyear(13091975),但也类似于day.month.year(1975年9月13日)或day-month-year(1975年9月13日) 我已经找到了一个主意,但它不起作用

String sep = "";
String geb = nf_datum.getText();
geb = geb.replaceAll(".", Matcher.quoteReplacement(sep));
我在这里找到了“replaceAll”的想法:
我希望有人能帮助我???

使用java8,您可以获得该字符串并定义一个日期时间格式,这将为您提供将字符串解析为LocalDate的灵活性,并且您不需要关心字符串的“外观”,之后您将获得一个LocalDate对象,您可以从中获取年、月和日

String geburtstag = "-";
DateTimeFormatter formatter = DateTimeFormatter
            .ofPattern("[ddMMyyyy]" + "[ddMMyyyy]" + "[dd.MM.yyyy]" + "[dd-MM-yyyy]");
// case1
geburtstag = "23.06.2017";
LocalDate ldt = LocalDate.parse(geburtstag, formatter);
System.out.println("Year: " + ldt.getYear());
System.out.println("Month: " + ldt.getMonthValue());
System.out.println("Day: " + ldt.getDayOfMonth());
// case2
geburtstag = "23062017";
ldt = LocalDate.parse(geburtstag, formatter);
System.out.println("Year: " + ldt.getYear());
System.out.println("Month: " + ldt.getMonthValue());
System.out.println("Day: " + ldt.getDayOfMonth());
// case3
geburtstag = "23-06-2017";
ldt = LocalDate.parse(geburtstag, formatter);
System.out.println("Year: " + ldt.getYear());
System.out.println("Month: " + ldt.getMonthValue());
System.out.println("Day: " + ldt.getDayOfMonth());

我不是舒尔,你问的问题是什么意思:D是gui,nf_数据是数字字段,稍后我将数字放入数组您的java版本是什么?您能使用Java8吗?当您说“它不工作”时,它以什么方式不工作?您是否得到了错误,或者只是没有得到预期的输出?一般来说,试图编写自己的代码来处理日期解析和格式化逻辑是一个非常糟糕的想法;Java内置了许多不同的实用程序来为您完成这些艰巨的工作。我建议您先看看文档,看看Java将免费为您提供什么。第二:使用java的实用程序是有道理的,但据我所知,它们给出了当前日期?我想让他们写他们的生日:(说实话,我一点也不懂你的(甚至一开始都不懂):(哪部分@Jana?开始时你定义了DateTimeFormatter,对吗?模式的whit.是什么意思?我不知道指令的意思或作用。然后你用parse在什么中转换了LocalDate?(因为ddMMyyyy是可以的,我需要这样的日期。所以我只想转换日期,如果它是以另一种方式写入的。)parse将任何给定字符串转换为locadate,格式为formatter中定义的格式。。。。