Udostępnij za pośrednictwem


Path.Join Metoda

Definicja

Przeciążenia

Join(String, String, String, String)

Łączy cztery ścieżki w jedną ścieżkę.

Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Łączy cztery składniki ścieżki w jedną ścieżkę.

Join(String, String, String)

Łączy trzy ścieżki w jedną ścieżkę.

Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Łączy trzy składniki ścieżki w jedną ścieżkę.

Join(ReadOnlySpan<String>)

Łączy zakres ścieżek w jedną ścieżkę.

Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Łączy dwa składniki ścieżki w jedną ścieżkę.

Join(String[])

Łączy tablicę ścieżek w jedną ścieżkę.

Join(String, String)

Łączy dwie ścieżki w jedną ścieżkę.

Join(String, String, String, String)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy cztery ścieżki w jedną ścieżkę.

public:
 static System::String ^ Join(System::String ^ path1, System::String ^ path2, System::String ^ path3, System::String ^ path4);
public static string Join (string? path1, string? path2, string? path3, string? path4);
static member Join : string * string * string * string -> string
Public Shared Function Join (path1 As String, path2 As String, path3 As String, path4 As String) As String

Parametry

path1
String

Pierwsza ścieżka do sprzężenia.

path2
String

Druga ścieżka do sprzężenia.

path3
String

Trzecia ścieżka do sprzężenia.

path4
String

Czwarta ścieżka do sprzężenia.

Zwraca

Połączona ścieżka.

Uwagi

Ta metoda po prostu łączy path, path2, path3 i path4 i dodaje znak separatora katalogu między dowolnymi składnikami ścieżki, jeśli jeszcze nie istnieje. Jeśli długość dowolnego argumentu path1, path2, path3 lub path4 wynosi zero, metoda łączy pozostałe argumenty. Jeśli długość wynikowego ciągu łączenia wynosi zero, metoda zwraca wartość String.Empty.

Jeśli path1 lub path2 lub path3 kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli path2 lub path3 lub path4 jest ścieżką bezwzględną, metoda Join nie odrzuca poprzednich ścieżek, jak to robi metoda Combine).

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "temp", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Dotyczy

Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy cztery składniki ścieżki w jedną ścieżkę.

public:
 static System::String ^ Join(ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, ReadOnlySpan<char> path3, ReadOnlySpan<char> path4);
public static string Join (ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, ReadOnlySpan<char> path3, ReadOnlySpan<char> path4);
static member Join : ReadOnlySpan<char> * ReadOnlySpan<char> * ReadOnlySpan<char> * ReadOnlySpan<char> -> string
Public Shared Function Join (path1 As ReadOnlySpan(Of Char), path2 As ReadOnlySpan(Of Char), path3 As ReadOnlySpan(Of Char), path4 As ReadOnlySpan(Of Char)) As String

Parametry

path1
ReadOnlySpan<Char>

Zakres znaków, który zawiera pierwszą ścieżkę do sprzężenia.

path2
ReadOnlySpan<Char>

Zakres znaków, który zawiera drugą ścieżkę do sprzężenia.

path3
ReadOnlySpan<Char>

Zakres znaków, który zawiera trzecią ścieżkę do sprzężenia.

path4
ReadOnlySpan<Char>

Zakres znaków, który zawiera czwartą ścieżkę do sprzężenia.

Zwraca

Połączona ścieżka.

Uwagi

Ta metoda po prostu łączy path, path2, path3 i path4 i dodaje znak separatora katalogu między dowolnymi składnikami ścieżki, jeśli jeszcze nie istnieje. Jeśli Length któregokolwiek z path1, path2, path3 lub path4 argument ma wartość zero, metoda łączy pozostałe argumenty. Jeśli ReadOnlySpan<T>.Length wszystkich składników wynosi zero, metoda zwraca wartość String.Empty.

Jeśli path1 lub path2 lub path3 kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli path2 lub path3 lub path4 jest ścieżką bezwzględną, metoda Join nie odrzuca poprzednich ścieżek, jak to robi metoda Combine).

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "temp", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Dotyczy

Join(String, String, String)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy trzy ścieżki w jedną ścieżkę.

public:
 static System::String ^ Join(System::String ^ path1, System::String ^ path2, System::String ^ path3);
public static string Join (string? path1, string? path2, string? path3);
static member Join : string * string * string -> string
Public Shared Function Join (path1 As String, path2 As String, path3 As String) As String

Parametry

path1
String

Pierwsza ścieżka do sprzężenia.

path2
String

Druga ścieżka do sprzężenia.

path3
String

Trzecia ścieżka do sprzężenia.

Zwraca

Połączona ścieżka.

Uwagi

Ta metoda po prostu łączy path, path2i path3 i dodaje znak separatora katalogu między dowolnymi składnikami ścieżki, jeśli jeszcze nie istnieje. Jeśli długość dowolnego argumentu path1, path2 lub path3 wynosi zero, metoda łączy pozostałe argumenty. Jeśli długość wynikowego ciągu łączenia wynosi zero, metoda zwraca wartość String.Empty.

Jeśli path1 lub path2 kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli path2 lub path3 jest ścieżką bezwzględną, metoda Join nie odrzuca poprzednich ścieżek, ponieważ metoda Combine wykonuje).

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "temp", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Dotyczy

Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy trzy składniki ścieżki w jedną ścieżkę.

public:
 static System::String ^ Join(ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, ReadOnlySpan<char> path3);
public static string Join (ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, ReadOnlySpan<char> path3);
static member Join : ReadOnlySpan<char> * ReadOnlySpan<char> * ReadOnlySpan<char> -> string
Public Shared Function Join (path1 As ReadOnlySpan(Of Char), path2 As ReadOnlySpan(Of Char), path3 As ReadOnlySpan(Of Char)) As String

Parametry

path1
ReadOnlySpan<Char>

Zakres znaków, który zawiera pierwszą ścieżkę do sprzężenia.

path2
ReadOnlySpan<Char>

Zakres znaków, który zawiera drugą ścieżkę do sprzężenia.

path3
ReadOnlySpan<Char>

Zakres znaków, który zawiera trzecią ścieżkę do sprzężenia.

Zwraca

Połączona ścieżka.

Przykłady

Poniższy przykład ilustruje różnicę w ścieżkach zwracanych przez metody Path.Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>) i Path.Combine(String, String, String). Gdy pierwszy ciąg jest w pełni kwalifikowaną ścieżką zawierającą dysk i katalog główny, a drugi jest ścieżką względną z pierwszej ścieżki, dwie metody generują identyczne wyniki. W drugim i trzecim wywołaniu metody ShowPathInformation ciągi zwracane przez dwie metody różnią się. W drugim wywołaniu metody pierwszy argument ciągu jest dyskiem, a drugi jest katalogiem rooted. Metoda Join łączy dwa ciągi i zachowuje zduplikowane separatory ścieżek. Wywołanie metody GetFullPath wyeliminowałoby duplikację. Metoda Combine porzuca dysk i zwraca katalog rooted na bieżącym dysku. Jeśli bieżący dysk aplikacji to C:\ i ciąg jest używany do uzyskiwania dostępu do pliku lub plików w katalogu, będzie on uzyskiwać dostęp do języka C: zamiast D:. Na koniec, ponieważ ostatni argument w trzecim wywołaniu ShowPathInformation jest zakorzeniony, metoda Join po prostu dołącza go do pierwszych dwóch argumentów, aby utworzyć niesensowną ścieżkę pliku, podczas gdy metoda Combine odrzuca pierwsze dwa ciągi i zwraca trzeci. Użycie tego ciągu w celu uzyskania dostępu do plików może dać aplikacji niezamierzony dostęp do poufnych plików.

using System;
using System.IO;

class Program3
{
    static void Main()
    {
        ShowPathInformation("C:/", "users/user1/documents", "letters");
        ShowPathInformation("D:/", "/users/user1/documents", "letters");
        ShowPathInformation("D:/", "users/user1/documents", "C:/users/user1/documents/data");
    }

   private static void ShowPathInformation(string path1, string path2, string path3)
    {
        Console.WriteLine($"Concatenating  '{path1}', '{path2}', and '{path3}'");
        Console.WriteLine($"   Path.Join:     '{Path.Join(path1, path2, path3)}'");
        Console.WriteLine($"   Path.Combine:  '{Path.Combine(path1, path2, path3)}'");
        Console.WriteLine($"   {Path.GetFullPath(Path.Join(path1, path2, path3))}");
    }
}
// The example displays the following output if run on a Windows system:
// Concatenating  'C:/', 'users/user1/documents', and 'letters'
//    Path.Join:     'C:/users/user1/documents\letters'
//    Path.Combine:  'C:/users/user1/documents\letters'
//    C:\users\user1\documents\letters
// Concatenating  'D:/', '/users/user1/documents', and 'letters'
//    Path.Join:     'D://users/user1/documents\letters'
//    Path.Combine:  '/users/user1/documents\letters'
//    D:\users\user1\documents\letters
// Concatenating  'D:/', 'users/user1/documents', and 'C:/users/user1/documents/data'
//    Path.Join:     'D:/users/user1/documents\C:/users/user1/documents/data'
//    Path.Combine:  'C:/users/user1/documents/data'
//    D:\users\user1\documents\C:\users\user1\documents\data
Imports System.IO

Module Program
    Public Sub Main()
        Dim path1 As String = "C:/"
        Dim path2 As String = "users/user1/documents"
        Dim path3 As String = "letters"
        ShowPathInformation(path1, path2, path3)
        
        path1 = "D:/"
        path2 =  "/users/user1/documents"
        path3 = "letters"
        ShowPathInformation(path1, path2, path3)

        path1 = "D:/"
        path2 =  "users/user1/documents"
        path3 = "C:/users/user1/documents/data"
        ShowPathInformation(path1, path2, path3)
    End Sub

   Private Sub ShowPathInformation(path1 As String, path2 As String, path3 As String)
        Dim result = Path.Join(path1.AsSpan(), path2.AsSpan(), path3.AsSpan())
        Console.WriteLine($"Concatenating  '{path1}, '{path2}', and `{path3}'")
        Console.WriteLine($"   Path.Join:     '{result}'")
        Console.WriteLine($"   Path.Combine:  '{Path.Combine(path1, path2, path3)}'")
    End Sub
End Module
' The example displays the following output if run on a Windows system:
'   Concatenating  'C:/, 'users/user1/documents', and `letters'
'      Path.Join:     'C:/users/user1/documents\letters'
'      Path.Combine:  'C:/users/user1/documents\letters'
'
'   Concatenating  'D:/, '/users/user1/documents', and `letters'
'      Path.Join:     'D:'users/user1/documents\letters'
'      Path.Combine:  '/users/user1/documents\letters'
'
'   Concatenating  'D:/, 'users/user1/documents', and `C:/users/user1/documents/data'
'      Path.Join:     'D:/users/user1/documents\C:/users/user1/documents/data'
'      Path.Combine:  'C:/users/user1/documents/data'

Uwagi

Ta metoda po prostu łączy path, path2i path3 i dodaje znak separatora katalogu między dowolnymi składnikami ścieżki, jeśli jeszcze nie istnieje. Jeśli Length dowolnego z path1, path2lub path3 argumenty są zerowe, metoda łączy pozostałe argumenty. Jeśli ReadOnlySpan<T>.Length wszystkich składników wynosi zero, metoda zwraca wartość String.Empty.

Jeśli path1 lub path2 kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli path2 lub path3 jest ścieżką bezwzględną, metoda Join nie odrzuca poprzednich ścieżek, ponieważ metoda Combine wykonuje).

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "temp", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Zobacz też

Dotyczy

Join(ReadOnlySpan<String>)

Łączy zakres ścieżek w jedną ścieżkę.

public:
 static System::String ^ Join(ReadOnlySpan<System::String ^> paths);
public static string Join (scoped ReadOnlySpan<string?> paths);
static member Join : ReadOnlySpan<string> -> string
Public Shared Function Join (paths As ReadOnlySpan(Of String)) As String

Parametry

paths
ReadOnlySpan<String>

Zakres ścieżek.

Zwraca

Połączona ścieżka.

Dotyczy

Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy dwa składniki ścieżki w jedną ścieżkę.

public:
 static System::String ^ Join(ReadOnlySpan<char> path1, ReadOnlySpan<char> path2);
public static string Join (ReadOnlySpan<char> path1, ReadOnlySpan<char> path2);
static member Join : ReadOnlySpan<char> * ReadOnlySpan<char> -> string
Public Shared Function Join (path1 As ReadOnlySpan(Of Char), path2 As ReadOnlySpan(Of Char)) As String

Parametry

path1
ReadOnlySpan<Char>

Zakres znaków, który zawiera pierwszą ścieżkę do sprzężenia.

path2
ReadOnlySpan<Char>

Zakres znaków, który zawiera drugą ścieżkę do sprzężenia.

Zwraca

Połączone ścieżki.

Przykłady

Poniższy przykład ilustruje różnicę w ścieżkach zwracanych przez metody Path.Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>) i Path.Combine(String, String). Gdy pierwszy ciąg jest w pełni kwalifikowaną ścieżką zawierającą dysk i katalog główny, a drugi jest ścieżką względną z pierwszej ścieżki, dwie metody generują identyczne wyniki. W drugim i trzecim wywołaniu metody ShowPathInformation ciągi zwracane przez dwie metody różnią się. W drugim wywołaniu metody pierwszy argument ciągu jest dyskiem, a drugi jest katalogiem rooted. Metoda Join łączy dwa ciągi i zachowuje zduplikowane separatory ścieżek. Metoda Combine porzuca dysk i zwraca katalog rooted na bieżącym dysku. Jeśli bieżący dysk aplikacji to C:\ i ciąg jest używany do uzyskiwania dostępu do pliku lub plików w katalogu, będzie on uzyskiwać dostęp do języka C: zamiast D:. Na koniec, ponieważ oba argumenty w trzecim wywołaniu do ShowPathInformation są zakorzenione, metoda Join po prostu dołącza je, aby utworzyć niesensowną ścieżkę pliku, podczas gdy metoda Combine odrzuca pierwszy ciąg i zwraca drugi. Użycie tego ciągu w celu uzyskania dostępu do plików może dać aplikacji niezamierzony dostęp do poufnych plików.

using System;
using System.IO;

class Program2
{
    static void Main()
    {
        var path1 = "C:/Program Files/";
        var path2 = "Utilities/SystemUtilities";
        ShowPathInformation(path1, path2);

        path1 = "C:/";
        path2 = "/Program Files";
        ShowPathInformation(path1, path2);

        path1 = "C:/Users/Public/Documents/";
        path2 = "C:/Users/User1/Documents/Financial/";
        ShowPathInformation(path1, path2);
    }

    private static void ShowPathInformation(string path1, string path2)
    {
        var result = Path.Join(path1.AsSpan(), path2.AsSpan());
        Console.WriteLine($"Concatenating  '{path1}' and '{path2}'");
        Console.WriteLine($"   Path.Join:     '{result}'");
        Console.WriteLine($"   Path.Combine:  '{Path.Combine(path1, path2)}'");
    }
}
// The example displays the following output if run on a Windows system:
//    Concatenating  'C:/Program Files/' and 'Utilities/SystemUtilities'
//       Path.Join:     'C:/Program Files/Utilities/SystemUtilities'
//       Path.Combine:  'C:/Program Files/Utilities/SystemUtilities'
//
//    Concatenating  'C:/' and '/Program Files'
//       Path.Join:     'C://Program Files'
//       Path.Combine:  '/Program Files'
//
//    Concatenating  'C:/Users/Public/Documents/' and 'C:/Users/User1/Documents/Financial/'
//       Path.Join:     'C:/Users/Public/Documents/C:/Users/User1/Documents/Financial/'
//       Path.Combine:  'C:/Users/User1/Documents/Financial/'
Imports System.IO

Module Example
    Public Sub Main()
        Dim path1 = "C:/Program Files/"
        Dim path2 = "Utilities/SystemUtilities"
        ShowPathInformation(path1, path2)

        path1 = "C:/"
        path2 = "/Program Files"
        ShowPathInformation(path1, path2)

        path1 = "C:/Users/Public/Documents/"
        path2 = "C:/Users/User1/Documents/Financial/"
        ShowPathInformation(path1, path2)
    End Sub

    Private Sub ShowPathInformation(path1 As String, path2 As String)
        Dim result = Path.Join(path1.AsSpan(), path2.AsSpan())
        Console.WriteLine($"Concatenating  '{path1}' and '{path2}'")
        Console.WriteLine($"   Path.Join:     '{result}'")
        Console.WriteLine($"   Path.Combine:  '{Path.Combine(path1, path2)}'")
        Console.WriteLine()
    End Sub
End Module
' The example displays the following output if run on a Windows system:
'    Concatenating  'C:/Program Files/' and 'Utilities/SystemUtilities'
'       Path.Join:     'C:/Program Files/Utilities/SystemUtilities'
'       Path.Combine:  'C:/Program Files/Utilities/SystemUtilities'
'
'    Concatenating  'C:/' and '/Program Files'
'       Path.Join:     'C:'Program Files'
'       Path.Combine:  '/Program Files'
'
'    Concatenating  'C:/Users/Public/Documents/' and 'C:/Users/User1/Documents/Financial/'
'       Path.Join:     'C:/Users/Public/Documents/C:/Users/User1/Documents/Financial/'
'       Path.Combine:  'C:/Users/User1/Documents/Financial/'

Uwagi

Ta metoda po prostu łączy path i path2 i dodaje znak separatora katalogu między dwoma składnikami ścieżki, jeśli jeden nie jest jeszcze obecny na końcu path1 lub na początku path2. Jeśli Lengthpath1 lub path2 wynosi zero, metoda zwraca drugą ścieżkę. Jeśli Length zarówno path1, jak i path2 wynosi zero, metoda zwraca wartość String.Empty.

Jeśli path1 kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli path2 jest ścieżką bezwzględną, metoda Join nie odrzuca path1 i zwraca path2, jak to robi metoda Combine). Poniższy przykład ilustruje różnicę w ścieżkach zwracanych przez dwie metody. Jeśli źródłem path2 jest dane wejściowe użytkownika, metoda Combine umożliwia użytkownikowi uzyskanie dostępu do zasobu systemu plików (na przykład C:/Users/User1/Documents/Financial/ w przypadku przykładu), że aplikacja nie zamierzała być dostępna.

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Zobacz też

Dotyczy

Join(String[])

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy tablicę ścieżek w jedną ścieżkę.

public:
 static System::String ^ Join(... cli::array <System::String ^> ^ paths);
public static string Join (params string?[] paths);
static member Join : string[] -> string
Public Shared Function Join (ParamArray paths As String()) As String

Parametry

paths
String[]

Tablica ścieżek.

Zwraca

Połączona ścieżka.

Uwagi

Ta metoda po prostu łączy wszystkie ciągi w paths i dodaje znak separatora katalogu między dowolnymi składnikami ścieżki, jeśli jeszcze nie istnieje. Jeśli Length któregokolwiek ze ścieżek w paths wynosi zero, metoda łączy pozostałe argumenty. Jeśli wynikowa długość ciągu łączenia wynosi zero, metoda zwraca wartość String.Empty.

Jeśli którakolwiek ze ścieżek w paths, z wyjątkiem ostatniego, kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli którakolwiek ze ścieżek w paths, z wyjątkiem pierwszej, jest ścieżką bezwzględną, metoda Join nie odrzuca poprzednich ścieżek, ponieważ metoda Combine.

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "temp", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Dotyczy

Join(String, String)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Łączy dwie ścieżki w jedną ścieżkę.

public:
 static System::String ^ Join(System::String ^ path1, System::String ^ path2);
public static string Join (string? path1, string? path2);
static member Join : string * string -> string
Public Shared Function Join (path1 As String, path2 As String) As String

Parametry

path1
String

Pierwsza ścieżka do sprzężenia.

path2
String

Druga ścieżka do sprzężenia.

Zwraca

Połączona ścieżka.

Uwagi

Ta metoda po prostu łączy path i path2 i dodaje znak separatora katalogu między dowolnymi składnikami ścieżki, jeśli jeszcze nie istnieje. Jeśli długość path1 lub path2 wynosi zero, metoda łączy pozostały argument. Jeśli długość wynikowego ciągu łączenia wynosi zero, metoda zwraca wartość String.Empty.

Jeśli path1 kończy się znakiem separatora ścieżki, który nie jest odpowiedni dla platformy docelowej, metoda Join zachowuje oryginalny znak separatora ścieżki i dołącza obsługiwany znak. Ten problem występuje w ścieżkach zakodowanych na stałe, które używają znaku ukośnika odwrotnego systemu Windows ("\"), który nie jest rozpoznawany jako separator ścieżki w systemach opartych na systemie Unix. Aby obejść ten problem, możesz:

W przeciwieństwie do metody Combine metoda Join nie próbuje wykorzenić zwróconej ścieżki. (Oznacza to, że jeśli path2 jest ścieżką bezwzględną, metoda Join nie odrzuca poprzednich ścieżek, ponieważ metoda Combine.

Nie wszystkie nieprawidłowe znaki dla nazw katalogów i plików są interpretowane jako niedopuszczalne przez metodę Join, ponieważ można użyć tych znaków do wyszukiwania symboli wieloznacznych. Jeśli na przykład Path.Join("c:\\", "temp", "*.txt") mogą być nieprawidłowe podczas tworzenia pliku, jest on prawidłowy jako ciąg wyszukiwania. W związku z tym metoda Join pomyślnie ją zinterpretuje.

Dotyczy