Den nemmeste måde at oprette en dato fra en streng i Java er at lade Sun Microsystems gøre arbejdet for dig. Ved hjælp af to klasser, som er en del af Java " util " og " text" API'er , der allerede er installeret på dit system med Java Development Kit , kan du automatisere konverteringen mellem strenge og datoer med kun et par linjer kode. Ting du skal
Java
Text editor
Vis Flere Instruktioner
1
Opret en ny Java-klasse navnet " StringToDate.java " med tekst editor eller . Java udviklingsmiljø for dit valg
2
Føj følgende kode til toppen af din klasse fil : Hej
import java.util.Date , import java.text.ParseException , import java.text.DateFormat ;
det er de klasser, vi skal bruge fra Java API hele vores program
3
Tilføj følgende under dine import udsagn. .
/*** Denne klasse konverterer strenge til datoer . * @ forfatter Kevin Walker * /public class StringToDate {
}
p Alle kode vil gå mellem den åbne og . tætte parentes i denne klasse
4
Opret en read metode inden for din klasse : .
/*** Læs strengen og returnere det som en dato * @ param d strengen at parse * @ return dato * /public static date read (String s ) kaster ParseException { DateFormat df = DateFormat.getDateInstance ( DateFormat.Long , Locale.US ) . dato d = df.parse ( s); tilbagevenden d ; }
Dette bruger parse metoden af DateFormat klassen til at fortolke String til en dato , og dermed gør alt det hårde arbejde for dig. Lokalitetsindstillingen er særlig vigtig , da den fortæller Java hvad stil at forvente, at datoer for at være i. Den amerikanske locale forventer de datoer at være i en måned dag-år -format, mens andre lokaliteter kan forvente en format såsom dag- måned-år eller år-måned - dag.
5.
Opret en vigtigste metode til at teste det.
/*** en prøve programmet ved hjælp af DateReader klassen . * @ param args dette program ikke modtager kommandolinjeargumenter * /public static void main ( String [] args ) { String s = " ." try { String s = " 1997/10/23 " Date d = read ( s); System.out.println ( " Du har indtastet datoen: " + d.toString () );} catch ( ParseException e ) { System.out.println ( s + " . kan ikke parses som en dato "); }} < br >
Dette blot feeds read -funktionen en streng til dato den 23. oktober 1997, og beder om date klassen til at give os tilbage en streng repræsentation af denne dato. I tilfælde af en fejl, vil " ParseException " blive fanget , og programmet vil informere brugeren om, at den dato, var ugyldigt.