Når du mottar innspill i Java , vil du ønsker å validere den før den sendes til andre deler av programmet for å unngå feil . Validere brukerens input før det aksepterer inn i programmet gjør at du kan sprette feil inngang tilbake til brukeren . Mens rekke valg i datouttrykk kan gjøre date innspill og validering plagsom , gir en enkel metode du kan sjekke dine innspill og sikre riktig formaterte datoer. Du trenger
tekst editor og kompilator eller Java IDE
Vis flere instruksjoner
en
bestemme datoen formatet du vil kreve at brukerne skal bruke for inndata til programmet . For eksempel kan du velge måned /dato /år
2
Lag en boolsk metode som aksepterer input dato i form av en streng : .
Privat isValidDate ( String inngang) { }
3
Konverter din ideelle date format til en streng som Java kan forstå . Innbytter kapital " M" for hvert tegn i måneden , små bokstaver "d" for hvert tegn i dag i måneden , og små bokstaver " y" for hvert tegn i år . For eksempel hvis du forventer brukerne å legge inn 31 desember 1999 , som 12/31/1999 , ville date format string være MM /dd /åååå . Lagre denne strengen som formatString i din isValidDate metode
String formatString = " MM /dd /åååå "; .
4
Import de nødvendige klasser i klassen som inneholder isValidDate metode < . br >
import java.text * ; .
5
Åpne en prøve blokk i din isValidDate metoden. Innenfor denne blokken opprette en ny SimpleDateFormat kalt format med formatString som input til konstruktøren sin
prøve { SimpleDateFormat format = ny SimpleDateFormat ( form) ; .
6
Ring format.setLenient ( false ) for å sikre at inndataene strengen vil bli skikkelig analyseres . Nå må du sende innspill streng i format.parse ( ) og lukk prøve blokken . SimpleDateFormat vil forsøke å matche inndatastrengen til din gitt formatString . Hvis input strengen inneholder en feil formatert dato, vil SimpleDateFormat kaste et unntak
format.setLenient ( false); . Format.parse ( input); }
7
Utenfor prøve blokkere , fange ParseException og IllegalArguementException . Return false hvis noen av disse unntakene har oppstått
fangst ( ParseException e ) {return false; } . Fangst ( IllegalArguementException e ) {return false; }
8 p Hvis programmet har nådd dette punktet , var inngangen dato gyldig og du kan returnere true og lukke metode
return true ; .
9
Integrer metoden inn i programmet . Ring isValidDate (inngang ) på noen innspill streng. Metoden vil returnere true hvis input strengen matcher datoformatet du angav i trinn tre .