System::Uri-Klasse

Uri class

Einheitlicher Ressourcenbezeichner. Objekte dieser Klasse sollten nur über die Funktion System::MakeObject() alloziert werden. Erstellen Sie niemals eine Instanz dieses Typs auf dem Stack oder mit dem Operator new, da dies zu Laufzeitfehlern und/oder Assertionsfehlern führt. Wickeln Sie diese Klasse stets in einen System::SmartPtr-Zeiger ein und verwenden Sie diesen Zeiger, um ihn als Argument an Funktionen zu übergeben.

class Uri : public System::Object

Methoden

MethodeBeschreibung
static CheckHostName(String)Bestimmt den Typ des angegebenen Hostnamens.
static CheckSchemeName(const String&)Bestimmt, ob das angegebene Schema gültig ist.
static Compare(const SharedPtr<Uri>&, const SharedPtr<Uri>&, UriComponents, UriFormat, StringComparison)Vergleicht die angegebenen Uri-Objekte anhand der angegebenen Vergleichsregeln.
Equals(SharedPtr<Object>) overrideBestimmt, ob die von den aktuellen und angegebenen Objekten dargestellten URIs gleich sind.
static EscapeDataString(const String&)Konvertiert einen String in seine escaped Darstellung.
static EscapeUriString(const String&)Konvertiert einen URI-String in seine escaped Darstellung.
static FromHex(char16_t)Ermittelt den Dezimalwert einer Hexadezimalziffer.
get_AbsolutePath() constGibt den absoluten Pfad der URI zurück.
get_AbsoluteUri() constGibt die absolute URI zurück.
get_Authority() constGibt den Hostnamen und die Portnummer eines Servers zurück.
get_DnsSafeHost() constGibt einen nicht entschlüsselten Hostnamen zurück.
get_Fragment() constGibt das maskierte URI‑Fragment zurück.
get_Host() constGibt den Hostnamen zurück.
get_HostNameType() constGibt den Hostnamentyp zurück.
get_IdnHost() constGibt einen Internationalen Domainnamen des Hosts zurück.
get_IsAbsoluteUri() constErmittelt, ob die vom aktuellen Objekt dargestellte URI absolut ist.
get_IsDefaultPort() constErmittelt, ob die vom aktuellen Objekt dargestellte URI den Standardport für das Schema der URI hat.
get_IsFile() constErmittelt, ob die vom aktuellen Objekt dargestellte URI eine Datei ist.
get_IsLoopback() constErmittelt, ob die vom aktuellen Objekt dargestellte URI auf einen lokalen Host verweist.
get_IsUnc() constErmittelt, ob die vom aktuellen Objekt dargestellte URI ein UNC-Pfad ist.
get_LocalPath() constGibt die vom Betriebssystem bereitgestellte Darstellung des Dateinamens zurück, auf den die vom aktuellen Objekt dargestellte URI verweist.
get_OriginalString() constGibt die URI‑Zeichenkette zurück, die beim Erzeugen des aktuellen Objekts an den Konstruktor übergeben wurde.
get_PathAndQuery() constGibt den absoluten Pfad und die Abfragekomponenten der vom aktuellen Objekt dargestellten URI zurück, getrennt durch ein Fragezeichen (?).
get_Port() constGibt die Portnummer der vom aktuellen Objekt dargestellten URI zurück.
get_Query() constGibt die in der vom aktuellen Objekt dargestellten URI enthaltenen Abfrageinformationen zurück.
get_Scheme() constGibt das Schema der vom aktuellen Objekt dargestellten URI zurück.
get_Segments() constGibt ein Array von Zeichenketten zurück, das die Pfadsegmente der vom aktuellen Objekt dargestellten URI enthält.
get_UserEscaped() constErmittelt, ob die an den Konstruktor des aktuellen Objekts übergebene URI‑Zeichenkette vollständig maskiert war.
get_UserInfo() constGibt einen Benutzernamen, ein Passwort und weitere Benutzerinformationen zurück, die mit der vom aktuellen Objekt dargestellten URI verknüpft sind.
GetComponents(UriComponents, UriFormat) constGibt die angegebenen Komponenten der vom aktuellen Objekt dargestellten URI unter Verwendung der angegebenen Maskierung zurück.
GetHashCode() const overrideErmittelt den Hashcode für die URI.
GetLeftPart(UriPartial)Gibt den angegebenen Teil der vom aktuellen Objekt dargestellten URI zurück.
static HexEscape(char16_t)Gibt das hexadezimale Äquivalent des angegebenen Zeichens zurück.
static HexUnescape(const String&, int32_t&)Wandelt die angegebene hexadezimale Darstellung eines Zeichens in ein Zeichen um.
IsBaseOf(const SharedPtr<Uri>&) constErmittelt, ob die vom aktuellen Uri-Objekt dargestellte URI die Basis der vom angegebenen Uri-Objekt dargestellten URI ist.
static IsHexDigit(char16_t)Bestimmt, ob das angegebene Zeichen eine gültige hexadezimale Ziffer darstellt.
static IsHexEncoding(const String&, int32_t)Bestimmt, ob ein Zeichen in der angegebenen Zeichenkette an der angegebenen Position hexadezimal codiert ist.
IsWellFormedOriginalString() constGibt an, ob die Zeichenkette, die zum Erzeugen dieses Uri verwendet wurde, wohlgeformt war und nicht weiter escaped werden muss.
static IsWellFormedUriString(const String&, UriKind)Bestimmt, ob die angegebene Zeichenkette ein wohlgeformter URI ist.
MakeRelative(const SharedPtr<Uri>&)Bestimmt die Differenz zwischen zwei Uri-Instanzen.
MakeRelativeUri(const SharedPtr<Uri>&)Bestimmt die Differenz zwischen den URIs, die durch das aktuelle und das angegebene Uri-Objekt dargestellt werden.
ToString() const overrideGibt die Zeichenkettenrepräsentation des durch das aktuelle Objekt dargestellten URI zurück.
static TryCreate(const String&, UriKind, SharedPtr<Uri>&)Erstellt ein Uri-Objekt, das den angegebenen URI darstellt; ein Argument gibt die Art des URI an.
static TryCreate(const SharedPtr<Uri>&, const String&, SharedPtr<Uri>&)Erstellt ein Uri-Objekt aus dem angegebenen Uri-Objekt, das den Basis‑URI darstellt, und der Zeichenkettenrepräsentation des relativen URI.
static TryCreate(const SharedPtr<Uri>&, const SharedPtr<Uri>&, SharedPtr<Uri>&)Erstellt ein Uri-Objekt aus den angegebenen Basis‑ und relativen URIs.
static UnescapeDataString(const String&)Entschlüsselt die angegebene escapte Zeichenkette.
Uri(const String&)Erstellt ein Uri-Objekt, das den angegebenen URI darstellt.
Uri(const String&, bool)Erstellt ein Uri-Objekt, das den angegebenen URI darstellt; ein Argument gibt an, ob der URI escaped werden soll.
Uri(const SharedPtr<Uri>&, const String&, bool)Erstellt ein Uri-Objekt aus dem angegebenen Uri-Objekt, das den Basis‑URI darstellt, und der Zeichenkettenrepräsentation des relativen URI; ein Argument gibt an, ob der URI escaped werden soll.
Uri(const String&, UriKind)Erstellt ein Uri-Objekt, das den angegebenen URI darstellt; ein Argument gibt die Art des URI an.
Uri(const SharedPtr<Uri>&, const String&)Erstellt ein Uri-Objekt aus den angegebenen Basis‑ und relativen URIs.
Uri(const SharedPtr<Uri>&, const SharedPtr<Uri>&)Erstellt ein Uri-Objekt aus den angegebenen Basis‑ und relativen URIs.

Felder

FeldBeschreibung
static SchemeDelimiterGibt die Zeichen an, die das Kommunikationsprotokoll‑Schema vom Adressteil des Uri trennen.
static UriSchemeFileGibt an, dass das Uri ein Zeiger auf eine Datei ist.
static UriSchemeFtpGibt an, dass das Uri über das File Transfer Protocol (FTP) aufgerufen wird.
static UriSchemeGopherGibt an, dass das Uri über das Gopher‑Protokoll aufgerufen wird.
static UriSchemeHttpGibt an, dass das Uri über das Hypertext Transfer Protocol (HTTP) aufgerufen wird.
static UriSchemeHttpsGibt an, dass das Uri über das Secure Hypertext Transfer Protocol (HTTPS) aufgerufen wird.
static UriSchemeMailtoGibt an, dass das Uri eine E‑Mail‑Adresse ist und über das Simple Mail Transfer Protocol (SMTP) aufgerufen wird.
static UriSchemeNetPipeGibt an, dass das Uri über das NetPipe‑Schema, das von Windows Communication Foundation verwendet wird, aufgerufen wird.
static UriSchemeNetTcpGibt an, dass das Uri über das NetTcp‑Schema, das von Windows Communication Foundation verwendet wird, aufgerufen wird.
static UriSchemeNewsGibt an, dass das Uri eine Internet‑Newsgroup ist und über das Network News Transport Protocol (NNTP) aufgerufen wird.
static UriSchemeNntpGibt an, dass das Uri eine Internet‑Newsgroup ist und über das Network News Transport Protocol (NNTP) aufgerufen wird.

Hinweise

#include "system/smart_ptr.h"
#include "system/uri.h"
#include <iostream>

int main()
{
  const auto uri = System::MakeObject<System::Uri>(u"https://docs.codeporting.com/translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/");

std::cout <<
  "AbsolutePath: " << uri->get_AbsolutePath() << std::endl <<
  "AbsoluteUri: " << uri->get_AbsoluteUri() << std::endl <<
  "Authority: " << uri->get_Authority() << std::endl <<
  "DnsSafeHost: " << uri->get_DnsSafeHost() << std::endl <<
  "Fragment: " << uri->get_Fragment() << std::endl <<
  "Host: " << uri->get_Host() << std::endl <<
  "IdnHost: " << uri->get_IdnHost() << std::endl <<
  "LocalPath: " << uri->get_LocalPath() << std::endl <<
  "OriginalString: " << uri->get_OriginalString() << std::endl <<
  "PathAndQuery: " << uri->get_PathAndQuery() << std::endl <<
  "Port: " << uri->get_Port() << std::endl <<
  "Query: " << uri->get_Query() << std::endl <<
  "Scheme: " << uri->get_Scheme() << std::endl;

  return 0;
}
/*
This code example produces the following output:
AbsolutePath: /translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
AbsoluteUri: https://docs.codeporting.com/translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
Authority: docs.codeporting.com
DnsSafeHost: docs.codeporting.com
Fragment:
Host: docs.codeporting.com
IdnHost: docs.codeporting.com
LocalPath: /translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
OriginalString: https://docs.codeporting.com/translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
PathAndQuery: /translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
Port: 443
Query:
Scheme: https
*/

Siehe auch