Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einführung
2 Grundlagen
3 Fehlerbehandlung
4 Erweiterte Grundlagen
5 Objektorientierte Programmierung
6 Wichtige Klassen in .NET
7 Weitere Elemente eines Windows-Programms
8 Datenbank-Anwendungen mit ADO.NET
9 Internet-Anwendungen mit ASP.NET
10 Zeichnen mit GDI+
11 Beispielprojekte
12 Windows Presentation Foundation
13 Windows Store-Apps für Windows 8
A Installation und technische Hinweise
B Lösungen der Übungsaufgaben
C Inhalt der Buch-DVD
D Der Autor
Stichwort

Jetzt Buch bestellen
Ihre Meinung?

Spacer
Einstieg in Visual Basic 2012 von Thomas Theis
Ideal für Programmiereinsteiger geeignet
Buch: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Rheinwerk Computing
579 S., 3., aktualisierte und erweiterte Auflage 2013, brosch., mit DVD
24,90 Euro, ISBN 978-3-8362-1959-4
Pfeil 6 Wichtige Klassen in .NET
Pfeil 6.1 Klasse String für Zeichenketten
Pfeil 6.1.1 Eigenschaften der Klasse String
Pfeil 6.1.2 Trimmen
Pfeil 6.1.3 Splitten
Pfeil 6.1.4 Suchen
Pfeil 6.1.5 Einfügen
Pfeil 6.1.6 Löschen
Pfeil 6.1.7 Teilzeichenkette ermitteln
Pfeil 6.1.8 Zeichen ersetzen
Pfeil 6.1.9 Ausgabe formatieren
Pfeil 6.2 Datum und Uhrzeit
Pfeil 6.2.1 Eigenschaften von DateTime
Pfeil 6.2.2 Rechnen mit Datum und Uhrzeit
Pfeil 6.2.3 DateTimePicker
Pfeil 6.3 Dateien und Verzeichnisse
Pfeil 6.3.1 Lesen aus einer Textdatei
Pfeil 6.3.2 Schreiben in eine Textdatei
Pfeil 6.3.3 Sicheres Lesen aus einer Textdatei
Pfeil 6.3.4 Sicheres Schreiben in eine Textdatei
Pfeil 6.3.5 Datei mit wahlfreiem Zugriff
Pfeil 6.3.6 Die Klassen File und Directory
Pfeil 6.3.7 Das aktuelle Verzeichnis
Pfeil 6.3.8 Eine Liste der Dateien
Pfeil 6.3.9 Eine Liste der Dateien und Verzeichnisse
Pfeil 6.3.10 Informationen über Dateien und Verzeichnisse
Pfeil 6.3.11 Bewegen in der Verzeichnishierarchie
Pfeil 6.4 Rechnen mit der Klasse Math
Pfeil 6.5 Zugriff auf MS Office
Pfeil 6.5.1 MS Word Datei erstellen
Pfeil 6.5.2 MS Excel Datei erstellen
Pfeil 6.6 Formular drucken
Pfeil 6.6.1 Druck und Seitenvorschau
Pfeil 6.6.2 Druckeinstellungen

Rheinwerk Computing - Zum Seitenanfang

6.2 Datum und UhrzeitZur nächsten Überschrift

Es gibt den Datentyp Date zur Speicherung von Datum und Uhrzeit in einer Variablen. Wesentlich weitergehende Informationen und Möglichkeiten bietet die Struktur DateTime. Objekten dieser Struktur stehen zahlreiche Eigenschaften und Methoden zur Verfügung.


Rheinwerk Computing - Zum Seitenanfang

6.2.1 Eigenschaften von DateTimeZur nächsten ÜberschriftZur vorigen Überschrift

Die Struktur DateTime hat zwei statische Eigenschaften, die ohne Erzeugung eines Objekts zur Verfügung stehen. Dies sind Now (heutiges Datum und jetzige Uhrzeit) und Today (heutiges Datum).

Ein Objekt der Struktur DateTime kann bei der Erzeugung auf verschiedene Arten einen Startwert erhalten. Die nützlichsten Konstruktoren benötigen:

  • keinen Parameter
  • Jahr, Monat und Tag als Parameter
  • Jahr, Monat, Tag, Stunde, Minute und Sekunde als Parameter

Objekte der Struktur DateTime bieten anschließend eine Reihe von Eigenschaften, die die Informationen aus Tabelle 6.1 bereithalten.

Tabelle 6.1 DateTime, Eigenschaften

Eigenschaft Erläuterung

Day

Tag des Monats

DayOfWeek

Tag der Woche (Wochentag)
Sonntag = 0, Montag = 1, usw.

DayOfYear

Tag des Jahres

Hour

Stunde

Millisecond

Millisekunde

Minute

Minute

Month

Monat

Second

Sekunde

TimeOfDay

Uhrzeit

Year

Jahr

Die Eigenschaften Year, Month, Day usw. liefern die jeweiligen Bestandteile des Datums als ganze Zahlen. Daraus lassen sich bei Bedarf verschiedene Formatierungen zusammensetzen.

Es folgt ein erstes Programm, in dem verschiedene Objekte erzeugt und mit einigen Eigenschaften ausgegeben werden (Projekt DatumUhrzeit), siehe Abbildung 6.12.

Abbildung

Abbildung 6.12 Objekte zu Datum und Zeit

Der Programmcode:

Public Class Form1
Private Sub cmdAnzeigen_Click(...) Handles ...
Dim d1 As New DateTime(
2012, 11, 17, 16, 35, 12)
Dim d2 As New DateTime(2012, 12, 1)
Dim d3, d4 As New DateTime

lstA.Items.Add("d1: " & d1)
lstA.Items.Add("d2: " & d2)
d3 = DateTime.Now
d4 = DateTime.Today
lstA.Items.Add("d3: " & d3)
lstA.Items.Add("d4: " & d4)

lstA.Items.Add(
"Tag der Woche: " & d1.DayOfWeek)
If d1.DayOfWeek = DayOfWeek.Sunday Then
lstA.Items.Add("Sonntag")
Else
lstA.Items.Add("Kein Sonntag")
End If

lstA.Items.Add(
"Tag des Jahres: " & d1.DayOfYear)
lstA.Items.Add("Datum: " & d1.Date)
lstA.Items.Add(
"Uhrzeit: " & d1.TimeOfDay.ToString())
End Sub
End Class

Listing 6.12 Projekt »DatumUhrzeit«

Zur Erläuterung:

  • Das Objekt d1 wird mit Datum und Uhrzeit erzeugt.
  • Das Objekt d2 wird nur mit Datum erzeugt, die Uhrzeit ist 00:00 Uhr.
  • Die Objekte d3 und d4 werden ohne Werte erzeugt, sie erhalten ihre Werte später.
  • Das Objekt d3 bekommt den Wert der statischen Eigenschaft Now, also aktuelles Datum und aktuelle Uhrzeit.
  • Das Objekt d4 bekommt den Wert der statischen Eigenschaft Today, also das aktuelle Datum.
  • Die Eigenschaft DayOfWeek des Objekts d1 liefert den Wochentag, beginnend mit Sonntag = 0. Der Wert wird anschließend mit einem Wert aus der Enumeration DayOfWeek verglichen.
  • Die Eigenschaft DayOfYear des Objekts d1 liefert den Tag des Jahres, von 1 bis 365 bzw. 366.
  • Die Eigenschaft Date des Objekts d1 liefert nur das Datum.
  • Die Eigenschaft TimeOfDay des Objekts d1 liefert nur die Uhrzeit. Diese ist ein Objekt der Klasse TimeSpan und muss daher vor der Verkettung mit einem String mithilfe der Methode ToString() umgewandelt werden.

Rheinwerk Computing - Zum Seitenanfang

6.2.2 Rechnen mit Datum und UhrzeitZur nächsten ÜberschriftZur vorigen Überschrift

Eine ganze Reihe von Methoden dienen zum Rechnen mit Datum und Uhrzeit. Sie beginnen alle mit der Vorsilbe Add: AddHours(), AddMilliseconds(), AddMinutes(), AddMonths(), AddSeconds(), AddYears() usw. Diese Methoden erhalten Double-Werte als Parameter zur Addition oder Subtraktion zur jeweiligen Komponente (Stunde, Minute, ...). Die Parameterwerte können

  • ganzzahlig sein oder über Nachkommastellen verfügen,
  • positiv oder negativ sein,
  • größer als die Maximalwerte der jeweiligen Komponente sein (30 Stunden, 130 Minuten usw.).

Eine Besonderheit stellen die Methoden Add() und Subtract() dar: Sie erhalten als Parameter ein Objekt der Struktur TimeSpan. Diese Objekte beinhalten Zeitintervalle und eignen sich besonders zum Rechnen mit Datum und Uhrzeit.

Ein Objekt der Struktur TimeSpan kann bei der Erzeugung auf verschiedene Arten einen Startwert bekommen. Die nützlichsten Konstruktoren benötigen als Parameter:

  • Stunde, Minute und Sekunde
  • Tag, Stunde, Minute und Sekunde

Im folgenden Programm (Projekt DatumUhrzeitRechnen) wird ein Objekt der Struktur DateTime initialisiert und anschließend mithilfe von Objekten der Klasse TimeSpan mehrfach verändert, siehe Abbildung 6.13.

Abbildung

Abbildung 6.13 Rechnen mit Datum und Uhrzeit

Der zugehörige Code:

Public Class Form1
Private Sub cmdA_Click(...) Handles ...
Dim d As New DateTime(
2012, 11, 17, 16, 35, 12)
Dim ts1 As New TimeSpan(2, 10, 5)
Dim ts2 As New TimeSpan(3, 4, 70, 10)

lstA.Items.Add("Start: " & d)
d = d.AddHours(3)
lstA.Items.Add("+3 Std: " & d)
d = d.AddHours(-2.5)
lstA.Items.Add("-2,5 Std: " & d)
d = d.AddHours(34)
lstA.Items.Add("+34 Std: " & d)
d = d.AddSeconds(90)
lstA.Items.Add("+90 Sek: " & d)
d = d.Add(ts1)
lstA.Items.Add("+2 Std 10 Min 5 Sek: " & d)
d = d.Subtract(ts2)
lstA.Items.Add(
"-3 Tage 4 Std 70 Min 10 Sek: " & d)
End Sub
End Class

Listing 6.13 Projekt »DatumUhrzeitRechnen«

Zur Erläuterung:

  • Es wird ein Objekt der Struktur DateTime erzeugt. Es hat den Wert 17.11.2012; 16:35:12 Uhr.
  • Für eine spätere Verwendung werden zwei Objekte der Struktur TimeSpan erzeugt. Dabei müssen ganze Zahlen (positiv oder negativ) genutzt werden. Sie dürfen allerdings die Zahlenbereiche der Komponenten überschreiten.
  • Das erste Objekt der Struktur TimeSpan beinhaltet ein positives Zeitintervall von 2 Stunden, 10 Minuten und 5 Sekunden.
  • Das zweite Objekt der Struktur TimeSpan beinhaltet ein Zeitintervall von 3 Tagen, 4 Stunden, 70 Minuten (!) und 10 Sekunden.
  • Mit AddHours(3) werden 3 Stunden hinzuaddiert. Die Add-Methoden verändern nicht das Objekt selber, sondern liefern ein verändertes Objekt zurück. Soll dieses veränderte Objekt erhalten bleiben, so muss es gespeichert werden, daher die Zuweisung d = d.AddHours(3). Aus 16:35:12 Uhr wird 19:35:12 Uhr.
  • Mit AddHours(-2,5) werden 2,5 Stunden abgezogen. Sie können mit negativen Werten und Nachkommastellen arbeiten. Die Nachkommastellen bei den Stunden werden in die entsprechenden Minuten umgerechnet. Aus 19:35:12 Uhr wird 17:05:12 Uhr.
  • Mit AddHours(34) wird mehr als ein Tag hinzuaddiert. Dabei wird auch über Tagesgrenzen hinaus richtig gerechnet. Aus dem 17.11.2012; 17:05:12 Uhr wird der 19.11.2012; 03:05:12 Uhr.
  • Mit AddSeconds(90) wird mehr als eine Minute hinzuaddiert. Dabei wird auch über Minuten- oder Stundengrenzen hinaus richtig gerechnet. Aus 03:05:12 Uhr wird 03:06:42 Uhr.
  • Das erste Zeitintervall (2 Stunden, 10 Minuten und 5 Sekunden) wird mithilfe der Methode Add() hinzuaddiert. Dabei finden mehrere Umrechnungen statt. Aus 03:06:42 Uhr wird 05:16:47 Uhr.
  • Das zweite Zeitintervall (3 Tage, 4 Stunden, 70 Minuten und 10 Sekunden) wird mithilfe der Methode Subtract() abgezogen. Aus dem 19.11.2012; 05:16:47 Uhr wird der 16.11.2012; 00:06:37 Uhr.

Rheinwerk Computing - Zum Seitenanfang

6.2.3 DateTimePickerZur vorigen Überschrift

Das Steuerelement DateTimePicker dient zur komfortablen Eingabe oder Auswahl von Datum und Uhrzeit. Über die Eigenschaft Format kann das Aussehen eingestellt werden. Neben dem Standardwert Long gibt es dafür die Werte Custom, Short und Time. Diese können auch zur Laufzeit, mithilfe der Enumeration DateTimePickerFormat eingestellt werden.

Im nachfolgenden Projekt DatumPicker werden vier DateTimePicker in vier verschiedenen Formaten gezeigt. Zunächst ist kein Element aufgeklappt, siehe Abbildung 6.14.

Abbildung

Abbildung 6.14 Vier DateTimePicker, nicht aufgeklappt

In Abbildung 6.15 sehen Sie den ersten DateTimePicker aufgeklappt, nachdem der Pfeil rechts am Steuerelement betätigt wurde. Wie Sie sehen, kann der auszuwählende Datumsbereich eingeschränkt werden, hier mit dem Mindestdatum 15.11.2012.

Abbildung

Abbildung 6.15 Erster DateTimePicker, aufgeklappt

Zunächst der Code der Form_Load-Prozedur, in der verschiedene Einstellungen vorgenommen werden:

Public Class Form1
Private Sub Form1_Load(...) Handles MyBase.Load
datPicker1.MinDate = New DateTime(2012, 11, 15)
datPicker1.MaxDate = New DateTime(2013, 1, 15)
datPicker1.Value = New DateTime(2012, 12, 15)

datPicker2.CustomFormat = "dd.MM.yy"
datPicker2.Format = DateTimePickerFormat.Custom

datPicker3.ShowUpDown = True
datPicker3.Format = DateTimePickerFormat.Short

datPicker4.ShowUpDown = True
datPicker4.Format = DateTimePickerFormat.Time
End Sub
...
End Class

Listing 6.14 Projekt DatumPicker, erster Teil

Zur Erläuterung:

  • Der erste DateTimePicker erscheint im Standardformat Long. Nach dem Aufklappen kann mit einem Klick einfach ein bestimmtes Datum ausgewählt werden.
  • Nach einem Klick auf einen der Pfeile nach links oder rechts kann der vorherige oder nachfolgende Monat ausgewählt werden. Mit einem Klick auf den Monatsnamen wechselt man auf die Jahresansicht. Dort wechselt man mit einem Klick auf das Jahr zur Mehrjahresansicht. Nach Auswahl eines bestimmten Jahres wechselt man von dort wieder zurück zur Jahresansicht. Von dort wiederum wechselt man nach Auswahl eines bestimmten Monats zur Monatsansicht zurück.
  • Die Eigenschaften MinDate und MaxDate erwarten einen Wert der Struktur DateTime und dienen zur Einstellung des Bereiches, aus dem das Datum ausgewählt werden kann.
  • Über die Eigenschaft Value stellt man das Datum ein, das zu Beginn ausgewählt sein soll.
  • Das Format des zweiten DateTimePickers ist individuell eingestellt: jeweils zwei Ziffern für Tag, Monat und Jahr. Damit dies wirksam wird, muss die Eigenschaft Format auf den Wert Custom gestellt werden.
  • Bei den letzten beiden DateTimePickern wurde ein Spin-Button (auch Up-Down-Button genannt) hinzugefügt, zur Einstellung der einzelnen Bestandteile der Zeitangabe. Das Format Short zeigt nur das Datum, ohne Wochentags- und Monatsname. Das Format Time zeigt nur die Uhrzeit.

Es folgt eine Methode, mit der der ausgewählte Wert des jeweiligen DateTimePickers angezeigt werden kann. Außerdem werden für eine zweite Ausgabe zu diesem Wert 24 Stunden hinzugerechnet.

Public Class Form1
...
Private Sub datPicker_ValueChanged(
sender As Object, e As EventArgs
) Handles datPicker1.ValueChanged,
datPicker2.ValueChanged,
datPicker3.ValueChanged,
datPicker4.ValueChanged
Dim datPicker As DateTimePicker = sender
lblDatum.Text = datPicker.Value

Dim plusTag As New DateTime
plusTag = datPicker.Value
plusTag = plusTag.AddDays(1)
lblPlusTag.Text = plusTag
End Sub
End Class

Listing 6.15 Projekt DatumPicker, zweiter Teil

Zur Erläuterung:

  • Das Ereignis ValueChanged tritt ein, sobald sich der Wert des DateTimePickers ändert. Die vorliegende Ereignismethode behandelt dieses Ereignis für alle vier DateTimePicker.
  • Es wird ein Verweis auf den auslösenden DateTimePicker eingerichtet. Dessen aktuell ausgewählter Wert wird im ersten Label ausgegeben.
  • Es wird ein neues Objekt der Struktur DateTime erzeugt. Dieses bekommt zunächst den aktuell ausgewählten Wert. Zu diesem Wert wird ein Tag hinzugerechnet, anschließend erfolgt die Ausgabe im zweiten Label.


Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Jetzt Buch bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: Visual Basic 2012






 Visual Basic 2012


Zum Rheinwerk-Shop: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Rheinwerk-Shop: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Rheinwerk-Shop: Java ist auch eine Insel






 Java ist auch
 eine Insel


Zum Rheinwerk-Shop: Einstieg in Python






 Einstieg in Python


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2013
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern