hur att validera ett datum i java

När du får in i Java , du vill validera den sedan vidare till andra delar av ditt program för att undvika fel. Validera användarens input innan den godkänns i programmet gör att du kan studsa fel ingång tillbaka till användaren . Medan urval i dag uttryck kan göra dagen inmatning och validering besvärande , medger en enkel metod att du kan kontrollera dina uppgifter och se till korrekt formaterade datum

Du behöver : .
textredigerare och kompilator eller Java IDE

1 .
Besluta om datumformat du kommer att kräva användarna att använda för program ingång . Till exempel kan du välja månad /dag /år
2
Skapa en boolesk metod som accepterar indata dag i form av en sträng : .

privata isValidDate ( String input) { }
3 .
Omvandla din ideala datumformat till en sträng som Java kan förstå . Suppleant kapital ”M ” för varje tecken av månaden, gemener ” d ” för varje tecken i dag i månaden , och små ” Y ” för varje tecken i år . Till exempel om du förväntar dig dina användare att mata in 31 december, 1999 , som 1999/12/31 , skulle din datumformat strängen MM /DD /ÅÅÅÅ . Spara den här strängen som formatsträngar i din isValidDate metod .

String FORMATSTRÄNG=” MM /dd /åååå ” .
4
Importera de nödvändiga klasserna i klass med din isValidDate metod

import java. text . * ; .
5
Öppna ett try-block i din isValidDate metod . Inom detta block skapa ett nytt SimpleDateFormat kallas format med formatsträngar som ingång till konstruktören

try {
SimpleDateFormat format=ny SimpleDateFormat ( form) , . .
6

Ring format . setLenient ( falskt ) för att säkerställa att indatasträngen sätt kommer att tolkas . Nu passerar ingången strängen i format. parse ( ) och stäng try-block . Den SimpleDateFormat försöker matcha indata-strängen till din lämnade formatsträngar . Om ingången strängen innehåller ett felaktigt formaterat datum kommer SimpleDateFormat kasta ett undantag

format. setLenient ( falskt ) .
format. parse ( input) ; }

7 .
Utanför try-blocket , fånga ParseException och IllegalArguementException . Return false om någon av dessa undantag har inträffat .

catch ( ParseException e ) {return false ; }
catch ( IllegalArguementException e ) {return false ; }
8
Om ditt program har . nått denna punkt , var den ingående datum giltig och du kan återgå verkligt och nära din metod

return true ; .
9
Integrera metod i ditt program . Ring isValidDate ( ingång ) på någon inmatningen. Metoden returnerar sant om indata-strängen matchar det datumformat du angav i steg 3

tips och varningar

  • Din sista metod kommer att likna följande :
  • boolean isValidDate ( String input) {
  • String FORMATSTRÄNG=” MM /dd /åååå ”
  • try {
  • SimpleDateFormat format=ny SimpleDateFormat ( form) ,
  • format . setLenient (falskt ) ,
  • format. parse ( input) ,
  • }
  • catch ( ParseException e ) {return false ; }
  • catch ( IllegalArguementException e ) {return false ; }
  • return true ;
  • }
  • Visited 1 times, 1 visit(s) today

    コメント

    タイトルとURLをコピーしました