Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

DateManip von Perl für Java

Frage Entwicklung Java

Mitglied: Closed

Closed (Level 1) - Jetzt verbinden

23.02.2010, aktualisiert 08:54 Uhr, 3139 Aufrufe, 1 Kommentar

Servus,

vorab: gegoogelt wurde bereits ;)

Bin recht neu in Java und suche nach einer Methode/Klasse/etc. der ich einen String (der ein Datum repräsentiert) übergeben kann, und die mir immer dann ein standardisiertes Datum returned.
Hab mir in Java bereits angeschaut: Calendar, GregorianCalendar, SimpleDateFormat, Date, aber keines davon erfüllt seinen Zweck.

Das Problem an der Sache ist nämlich, dass ich nicht weiß, wie das Datum ausschaut. Ich rufe unterschiedliche Quellen ab und möchte möglichst flexibel bleiben. Dabei muss die Funktion sowohl das europäische, als auch das amerikanische Datumsformat richtig interpretieren können.

BeispielStrings:

2010-1-16 14:32:53
Tue, 16 Feb 2010 14:32:53 GMT
Tue 02:32:53 AM 16.02.2010

Das Problem an den Java Klassen ist, dass ich vorab wissen muss, an welcher Stelle der Tag, der Monat, etc. zu finden sind.

Ein in Perl programmiertes Skript, welches die DateManip Bilbl. benutzt erledigt dies ohne weiteres. Ich vermute, dass es auch in Java möglich ist, dies zu erledigen, aber ich finde nicht heraus wie genau.

Perl Skript:

01.
use DateTime::Format::DateManip; 
02.
use Date::Manip; 
03.
 
04.
if(@ARGV != 1) { 
05.
	if(@ARGV < 1){ 
06.
		die "One parameter is required!\n"; 
07.
	} else { 
08.
		die "Only one command line parameter is accepted!\n"; 
09.
10.
	die "Usage: date.pl [date]\n"; 
11.
12.
 
13.
my $date = $ARGV[0];	 
14.
 
15.
my $dt = DateTime::Format::DateManip->parse_datetime 
16.
             ($date); 
17.
my $dm = DateTime::Format::DateManip->format_datetime($dt); 
18.
 
19.
print $dm;
Besten Dank vorab
Mitglied: Closed
16.03.2010 um 15:58 Uhr
folgende funktion und joda (http://joda-time.sourceforge.net/) konnten helfen:

01.
	public static String convertDateTime(String regex, String date, String dateFormat, String locale)throws DateException{ 
02.
		 
03.
		if(date!=null && !date.isEmpty()){ 
04.
			DateTimeFormatter fmt = DateTimeFormat.forPattern(dateFormat).withLocale(new Locale(locale)); 
05.
			Pattern p = Pattern.compile(regex); 
06.
			Matcher m = p.matcher(date); 
07.
			DateTime dt = new DateTime(DateTimeZone.UTC); 
08.
			String dummy=""; 
09.
	 
10.
			if(m.matches()){ 
11.
		   	for(int i=1; i<=m.groupCount(); i++){ 
12.
		   		dummy += m.group(i); 
13.
14.
				dt = fmt.parseDateTime(dummy); 
15.
			}else{ 
16.
				throw new DateException("Could not find a date in the string!"); 
17.
18.
			return dt.toString("yyyy-MM-dd HH:mm:ss"); 
19.
		}else{ 
20.
			DateTime dt = new DateTime(DateTimeZone.UTC); 
21.
			return dt.toString("yyyy-MM-dd HH:mm:ss"); 
22.
23.
	}
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (24)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (11)

Frage von Akcent zum Thema Hyper-V ...

Netzwerke
Abisolierwerkzeug (11)

Frage von SarekHL zum Thema Netzwerke ...

Windows Server
Server 2016 - Kuriositäten (8)

Frage von certifiedit.net zum Thema Windows Server ...