Home
Themen
Angebote
Downloads
News & Blogs
    ZfS News
    .NET & C#
    ASP.NET & Sharepoint
    ADO.NET & Datenbanken
    Windows
    Lehre
    Blogs nach Personen
Informatiklandkarte
DBWorld Map
.NET Glossar
Wir über uns
Kontakt
Newsletter

News

Thursday, September 28, 2006

C#-FAQ: Formatierung von Datumsangaben  #

Die Darstellung des aktuellen Datums wird vornehmlich durch zwei Faktoren beeinflusst:

 

  1. durch die zu verwendende Sprache bzw. Kultur
  2. durch eine explizite Formatangabe

Mit dem Beitrag vom 17.08.2006 haben wir bereits die Methode String.Format()zur Formatierung von Fließkommazahlen vorgestellt. Die gleiche Methode kann auch der Formatierung von Datumsangaben dienen. Schauen wir uns die Signatur dieser Methode an, erkennt man, dass als erster Parameter ein Objekt erwartet wird, das die Schnittstelle IFormatProvider implementiert:

 

public static string Format(IFormatProvider provider, string format, params object[] args);

 

Das .NET-Framework stellt unter dem Namespace System.Globalization zwei Klassen zur Verfügung, die diese Schnittstelle implementieren, die im Kontext der Formatierung von Datumsangaben von besonderer Bedeutung sind:

 

  1. CultureInfo
  2. DateTimeFormatInfo

Während die erste Klasse CultureInfo Informationen über eine bestimmte Kultur bereitstellt, definiert die zweite Klasse DateTimeFormatInfo das Format der Anzeige durch die Angabe eines Standardformatbezeichners. Die wichtigsten dieser Standardformatbezeichner wollen wir im Folgenden etwas genauer betrachten. Wir nutzen dazu eine andere überladene Methode String.Format, die als Parameter lediglich den Formatbezeichner und das Datum erwartet. Die in den Systemeinstellungen definierte Kultur wird dabei für die landesspezifische Formatierung genutzt.

 

  1. Console.WriteLine(String.Format("{0:d}", DateTime.Now));

            Ausgabe: kurzes Datum: 04.09.2006

 

  1. Console.WriteLine(String.Format("{0:D}", DateTime.Now));

            Ausgabe: langes Datum: Montag, 4. September 2006

 

3. Console.WriteLine(String.Format("{0:f}", DateTime.Now));

 

            Ausgabe: langes Datum inkl. Zeitangabe: Montag, 4. September 2006 09:39

 

4. Console.WriteLine(String.Format("{0:m}", DateTime.Now));

 

            Ausgabe: Tag und Monat: 04 September

 

  1. Console.WriteLine(String.Format("{0:T}", DateTime.Now));

            Ausgabe: Zeitangabe inkl. Sekunden: 09:40:44

 

Weitere Standardbezeichner sind z.B. „t“ (Zeitangabe ohne Sekunden), „y“ (Monat und Jahr) oder „g“ (Datum inkl. Zeitangabe).

 

Um die Formatierung länderspezifisch zu gestalten, muss der Methode String.Format nun ein CultureInfo-Objekt übergeben werden, das die entsprechende Kultur beschreibt. Das folgende Listing definiert ein amerikanisches CultureInfo-Objekt und gibt das aktuelle Datum in einem für den US-amerikanischen Raum typischen Format aus:

 

CultureInfo culture = new CultureInfo("en-US");

Console.WriteLine(String.Format(culture, "{0:d}", DateTime.Now));

 

Die Ausgabe dieses Zweizeilers ist: 9/4/2006.

 

Neben diesen Standardformatbezeichnern lassen sich auch analog zur Formatierung von Fließkommazahlen eigene Formatierungsanweisungen definieren.

 

Hinweis: eine detaillierte Übersicht über die Standardformatbezeichner zur Formatierung von Datumsangaben findet es sich auf den MSDN-Seiten unter http://msdn2.microsoft.com/en-us/library/system.globalization.datetimeformatinfo.aspx. Eine Übersicht über die Länderkennungen findet sich auf den MSDN-Seiten unter http://msdn2.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx.

Friday, September 22, 2006

ZfS Aachen zu Gast auf dem Tag der Innovationen  #

Im Rahmen des Informatikjahres 2006 fand am 19. September 2006 im Berliner E-Werk ein Tag der Innovationen statt. In einer WISSENSCHAFTSSHOW hat Microsoft sein Engagement für die Zukunft vorgestellt. Star-Moderator WIGALD BONING präsentierte spannende Forschungsergebnisse und ausgewählte Projekte, darunter das Zentrum für Softwarekonzepte. MATTHIAS JARKE, wissenschaftlicher Direktor des ZfS Aachen, demonstrierte während der Bühnenshow die Landkarte der Informatik und zeigte einen Feuerlöschroboter der Karlsruher ZfS-Kollegen. Fotos dieser Veranstaltungen finden Sie in unserem Fotoalbum.



Foto: (c) Frank Ossenbrink

Tuesday, September 12, 2006

Neue Version der Informatik-Landkarte  #

Eine neue Version der Informatik-Landkarte ist seit heute online. In der Informatik-Landkarte werden die Universitäten, Fachhochschulen und Forschungseinrichtungen in Deutschland mit Informatikbezug aufgeführt. Mit Hilfe des MapPoint Web Service können diese Einrichtungen in einer Karte dargestellt werden und Routen zu diesen Adressen geplant werden. Des Weiteren werden die Veranstaltungen des Informatikjahrs in einem Kalender oder in einer Karte dargestellt.

Die neue Version bietet vor allem eine überarbeitete grafische Benutzerschnittstelle und erweiterte Suchmöglichkeiten für Veranstaltungen, z.B. im Umkreis von einer bestimmten Adresse oder innerhalb eines Zeitraums. Die wichtigste technische Neuerung ist die Integration unseres Tools SWAPit in die Informatik-Landkarte. SWAPit ist ein Werkzeug zum explorativen Text und Data Mining und kann inhaltliche Zusammenhänge von Dokumenten auf einer Themenkarte darstellen. In der Informatik-Landkarte benutzen wir SWAPit, um die Themen der Veranstaltungen darzustellen.

Diese Integration war auch eine technische Herausforderung, denn SWAPit hat eine Benutzerschnittstelle, die als Java-Applet realisiert ist, wohingegen die Informatik-Landkarte in ASP.NET 2.0 entwickelt wurde. Diese beiden Systeme lassen sich nicht direkt miteinander verknüpfen. Um die Integration zu ermöglichen wurden hier Webservices benutzt, die plattformunabhängig Dienste bereitstellen können.

Thursday, September 07, 2006

Microsoft verschenkt 5000 Exemplare der Visual Studio 2005 Standard Edition  #

Bei MSDN-Solve gibt es nun eine Aktion von Microsoft bei der bis zum 8. Oktober 5000 Exemplare von Visual Studio 2005 Standard Edition verschenkt werden. Zudem gibt es 6 Monate kostenloses Hosting mit ASP.NET 2.0, SQL Server und eine eigene Subdomain bei www.centron.de.

Um in den Genuss dieses Angebots zu kommen muss man sich lediglich fünf CodeClips anschauen und die WebCodes bei der Bestellung eines Developer-Pakets angeben.

Monday, September 04, 2006

Web Application Projects für VS 2005  #

Wer hat sich noch nicht über die spezielle Behandlung von Website- oder Webservice-Projekten in Visual Studio 2005 gewundert? Diese Web-Projekte haben keine Projektdatei und werden auch nicht beim Neuerstellen einer Solution zugeordnet. Das erschwert das Erstellen von komplexen Webanwendungen, in der andere Web-Projekte (z.B. Webservices) referenziert werden, da es keinen umfassenden Container gibt. Das Hauptproblem liegt aber in der Migration von Web-Projekten von VS.NET 2003, da dort Web-Projekte ähnlich wie "normale" Projekte geführt wurden und das Konzept der "Website-Projekte" noch nicht existierte.

Dafür hat Microsoft mittlerweile ein Update und ein Add-In herausgebracht, sodass nun auch Web-Anwendungsprojekte (Web Application Projects) in Visual Studio 2005 erstellt werden können. Wichtig bei der Installation ist, dass man Update und Add-In installiert, da das Add-In die notwendigen Projekt-Templates enthält, die allerdings ohne das Update nicht funktionieren.

Eine weitere Eigenschaft der Web-Anwendungsprojekte ist, dass die Assemblies nun für die ganze Web-Anwendung erstellt werden können und nicht separat für jede einzelne ASP-Seite. Außerdem hat man mehr Kontrolle über den Build-Prozess, z.B. kann man Pre- und Post-Build-Events definieren.

Allerdings hat die Verwendung von Web-Anwendungsprojekten auch ein paar Nachteile. So ist das Code-Behind-Modell Pflicht für diese Projekte, Single-Page-Code ist nicht möglich (d.h. ASP- und C#/VB-Code sind in separaten Dateien, was prinzipiell eine gute Idee ist :-) ). Auch kann man nicht mehr einfach jedes Verzeichnis einfach als Website öffnen, sondern muss zunächst eine Projekt dafür anlegen. Da das Add-In die Web-Anwendungsprojekte zu den Projekt-Templates in Visual Studio 2005 nur hinzufügt und die existierenden Templates für Website-Projekte weiterhin erhalten bleiben, ist dies kein ernsthaftes Problem.

Eine detaillierte Gegenüberstellung zwischen Web-Anwendungsprojekten und Website-Projekten gibt es beim MSDN. Interessant in diesem Zusammenhang ist auch das Add-In für "Web Deployment Projects", mit dem das Deployment von komplexen Web-Anwendungsprojekten erleichtert wird.

Archiv

© 2008 Fraunhofer FIT - Powered by: newtelligence dasBlog 1.8.5223.2 - Sign In

Feeds: RSS 2.0 | Atom 1.0