System::Uri class
Contents
[
Hide
]Uri class
Unified resource identifier. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.
class Uri : public System::Object
Methods
| Method | Description |
|---|---|
| static CheckHostName(String) | Determines the type of the specified host name. |
| static CheckSchemeName(const String&) | Determines if the specified scheme is valid. |
| static Compare(const SharedPtr<Uri>&, const SharedPtr<Uri>&, UriComponents, UriFormat, StringComparison) | Compares the specified Uri objects using the specified comparison rules. |
| Equals(SharedPtr<Object>) override | Determines if the URIs represented by the current and specified objects are equal. |
| static EscapeDataString(const String&) | Converts a string to its escaped representation. |
| static EscapeUriString(const String&) | Converts a URI string to its escaped representation. |
| static FromHex(char16_t) | Gets the decimal value of a hexadecimal digit. |
| get_AbsolutePath() const | Returns the absolute path of the URI. |
| get_AbsoluteUri() const | Returns the absolute URI. |
| get_Authority() const | Returns the host name and the port number for a server. |
| get_DnsSafeHost() const | Returns an unescaped host name. |
| get_Fragment() const | Returns the escaped URI fragment. |
| get_Host() const | Returns the host name. |
| get_HostNameType() const | Returns the host name type. |
| get_IdnHost() const | Returns an International Domain Name of the host. |
| get_IsAbsoluteUri() const | Determines if the URI represented by the current object is absolute. |
| get_IsDefaultPort() const | Determines if the URI represented by the current object has default port for the URI’s scheme. |
| get_IsFile() const | Determines if the URI represented by the current object is a file. |
| get_IsLoopback() const | Determines if the URI represented by the current object references a local host. |
| get_IsUnc() const | Determines if the URI represented by the current object is a UNC path. |
| get_LocalPath() const | Returns the operating system representation of the file name referenced by the URI represented by the current object. |
| get_OriginalString() const | Returns the URI string that was passed to the constructor when current object was constructed. |
| get_PathAndQuery() const | Returns the absolute path and query components of the URI represented by the current object separated by a question mark (?). |
| get_Port() const | Returns the port number of the URI represented by the current object. |
| get_Query() const | Returns the query information included in the URI represented by the current object. |
| get_Scheme() const | Returns the scheme of the URI represented by the current object. |
| get_Segments() const | Returns an array of strings containing the path segments of the URI represented by the current object. |
| get_UserEscaped() const | Determines if the URI string passed to the constructor of the current object was fully escaped. |
| get_UserInfo() const | Returns a uer name, password and other user information associated with the URI represented by the current object. |
| GetComponents(UriComponents, UriFormat) const | Returns the specified components of the URI represented by the current object using the specified escaping. |
| GetHashCode() const override | Gets the hash code for the URI. |
| GetLeftPart(UriPartial) | Returns the specified portion of the URI represented by the current object. |
| static HexEscape(char16_t) | Returns a hexadecimal equivalent of the specified character. |
| static HexUnescape(const String&, int32_t&) | Converts the specified hexadecimal representation of a character to a character. |
| IsBaseOf(const SharedPtr<Uri>&) const | Determines of the URI represented by the current Uri object is a base of URI represented by the specified Uri object. |
| static IsHexDigit(char16_t) | Determines if the specified character represents a valid hexadecimal digit. |
| static IsHexEncoding(const String&, int32_t) | Determines if a character in the specified string at the specified position is hexadecimal encoded. |
| IsWellFormedOriginalString() const | Indicates whether the string used to construct this Uri was well-formed and is not required to be further escaped. |
| static IsWellFormedUriString(const String&, UriKind) | Determines if the specified string is a well-formed URI. |
| MakeRelative(const SharedPtr<Uri>&) | Determines the difference between two Uri instances. |
| MakeRelativeUri(const SharedPtr<Uri>&) | Determines the difference between URIs represented by the current and the specified Uri objects. |
| ToString() const override | Returns the string representation of the URI represented by the current object. |
| static TryCreate(const String&, UriKind, SharedPtr<Uri>&) | Constructs a Uri object that represents the specified URI; an argument specifies the URI kind. |
| static TryCreate(const SharedPtr<Uri>&, const String&, SharedPtr<Uri>&) | Constructs an Uri abject from the specified Uri object representing the base URI and the string representation of relative URI. |
| static TryCreate(const SharedPtr<Uri>&, const SharedPtr<Uri>&, SharedPtr<Uri>&) | Constructs an Uri abject from the specified base and relative URIs. |
| static UnescapeDataString(const String&) | Unescapes the specified escaped string. |
| Uri(const String&) | Constructs a Uri object that represents the specified URI. |
| Uri(const String&, bool) | Constructs a Uri object that represents the specified URI; an argument specifies if the URI should be escaped. |
| Uri(const SharedPtr<Uri>&, const String&, bool) | Constructs an Uri abject from the specified Uri object representing the base URI and the string representation of relative URI; an argument specifies if the URI should be escaped. |
| Uri(const String&, UriKind) | Constructs a Uri object that represents the specified URI; an argument specifies the URI kind. |
| Uri(const SharedPtr<Uri>&, const String&) | Constructs an Uri abject from the specified base and relative URIs. |
| Uri(const SharedPtr<Uri>&, const SharedPtr<Uri>&) | Constructs an Uri abject from the specified base and relative URIs. |
Fields
| Field | Description |
|---|---|
| static SchemeDelimiter | Specifies the characters that separate the communication protocol scheme from the address portion of the Uri. |
| static UriSchemeFile | Specifies that the Uri is a pointer to a file. |
| static UriSchemeFtp | Specifies that the Uri is accessed through the File Transfer Protocol. |
| static UriSchemeGopher | Specifies that the Uri is accessed through the Gopher protocol. |
| static UriSchemeHttp | Specifies that the Uri is accessed through the Hypertext Transfer Protocol. |
| static UriSchemeHttps | Specifies that the Uri is accessed through the Secure Hypertext Transfer Protocol. |
| static UriSchemeMailto | Specifies that the Uri is an email address and is accessed through the Simple Mail Transport Protocol. |
| static UriSchemeNetPipe | Specifies that the Uri is accessed through the NetPipe scheme used by Windows Communication Foundation. |
| static UriSchemeNetTcp | Specifies that the Uri is accessed through the NetTcp scheme used by Windows Communication Foundation. |
| static UriSchemeNews | Specifies that the Uri is an Internet news group and is accessed through the Network News Transport Protocol. |
| static UriSchemeNntp | Specifies that the Uri is an Internet news group and is accessed through the Network News Transport Protocol. |
Remarks
#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
*/
See Also
- Class Object
- Namespace System
- Library Aspose.PDF for C++