Skip to main content

Guid

Die Klasse Guid dient zum Erstellen und Verwalten von Global Unique Identifiers (GUIDs).

Eine GUID ist eine 128-Bit lange Kennung, die mit extrem hoher Wahrscheinlichkeit weltweit eindeutig ist. Sie wird häufig verwendet, um Objekte, Dateien, Datenbankeinträge oder Sitzungen eindeutig zu identifizieren.


Grundlagen

Im Gegensatz zu Klassen wie Button oder Form besitzt Guid keine grafische Darstellung.

Sie dient ausschließlich dazu, eindeutige Kennungen zu erzeugen und zu verarbeiten.

  • Guid → erzeugt eindeutige Kennungen

  • Math → führt mathematische Berechnungen aus

  • DateTime → verarbeitet Datum und Uhrzeit

  • Random → erzeugt Zufallszahlen

GUID erzeugen

# Neue GUID erzeugen
$guid = [Guid]::NewGuid()

$guid

Ausgabe:

0f8fad5b-d9cb-469f-a165-70867728950e

GUID aus einem String erstellen

$guid = [Guid]::Parse(
    "0f8fad5b-d9cb-469f-a165-70867728950e"
)

Leere GUID

[Guid]::Empty

Ausgabe:

00000000-0000-0000-0000-000000000000

Diese GUID besitzt ausschließlich Nullen und dient häufig als Standard- oder Platzhalterwert.


Eigenschaften

Eigenschaft Beschreibung
Empty Enthält eine GUID, deren sämtliche Bits auf 0 gesetzt sind.

Empty

Empty

Typ = System.Guid

Empty stellt eine leere GUID dar.

Sie wird häufig verwendet, um zu prüfen, ob einer Variablen bereits eine gültige GUID zugewiesen wurde.

if ($id -eq [Guid]::Empty) {
    "Keine GUID vorhanden."
}

Methoden

Methode Beschreibung
NewGuid() Erstellt eine neue eindeutige GUID.
Parse() Erstellt eine GUID aus einem String.
TryParse() Versucht einen String in eine GUID umzuwandeln.
ToString() Gibt die GUID als Zeichenkette zurück.
Equals() Vergleicht zwei GUIDs.
CompareTo() Vergleicht zwei GUIDs für Sortierungen.

NewGuid()

NewGuid()

[Guid]::NewGuid()

Beschreibung

Erzeugt eine neue zufällige GUID.

Jeder Aufruf liefert eine neue Kennung, die mit extrem hoher Wahrscheinlichkeit eindeutig ist.

Rückgabe

Rückgabetyp System.Guid

Beispiel

$id = [Guid]::NewGuid()

$id # fd5d1b64-ac86-46b5-a511-92c68ce09d2b
Parse()

Parse()

[Guid]::Parse($string)

Beschreibung

Konvertiert einen String in ein Guid-Objekt.

Ist der String ungültig, wird eine Ausnahme ausgelöst.

Rückgabe

Rückgabetyp System.Guid

Beispiel

$id = [Guid]::Parse(
    "0f8fad5b-d9cb-469f-a165-70867728950e"
)
TryParse()

TryParse()

[Guid]::TryParse($string, [ref]$guid)

Beschreibung

Versucht einen String in eine GUID umzuwandeln.

Im Gegensatz zu Parse() wird keine Ausnahme ausgelöst, wenn der String ungültig ist.

Rückgabe

Rückgabetyp System.Boolean

Beispiel

$guid = [Guid]::Empty

if ([Guid]::TryParse($text, [ref]$guid)) {
    "Gültige GUID"
}
else {
    "Ungültige GUID"
}
ToString()

ToString()

$guid.ToString()

Beschreibung

Gibt die GUID als Zeichenkette zurück.

Rückgabe

Rückgabetyp System.String

Beispiel

$guid = [Guid]::NewGuid()

$guid.ToString()
Equals()

Equals()

$guid1.Equals($guid2)

Beschreibung

Vergleicht zwei GUIDs auf Gleichheit.

Rückgabe

Rückgabetyp System.Boolean

Beispiel

$id1 = [Guid]::NewGuid()
$id2 = $id1

$id1.Equals($id2)
CompareTo()

CompareTo()

$guid1.CompareTo($guid2)

Beschreibung

Vergleicht zwei GUIDs.

Die Methode wird hauptsächlich zum Sortieren verwendet.

Rückgabe

Rückgabetyp System.Int32

  • < 0 → kleiner

  • 0 → gleich

  • > 0 → größer


Tipps & Tricks

Neue eindeutige Dateinamen erzeugen

$file = "{0}.txt" -f ([Guid]::NewGuid())

Beispiel:

92d4bb75-0d95-4d9d-9d88-d7548cb9cbf4.txt

Prüfen, ob ein String eine gültige GUID ist

[Guid]::TryParse($text, [ref]([Guid]::Empty))