다음을 통해 공유


Path.Join 메서드

정의

오버로드

Join(String, String, String, String)

4개의 경로를 단일 경로로 연결합니다.

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

4개의 경로 구성 요소를 단일 경로로 연결합니다.

Join(String, String, String)

세 개의 경로를 단일 경로로 연결합니다.

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

세 개의 경로 구성 요소를 단일 경로로 연결합니다.

Join(ReadOnlySpan<String>)

경로 범위를 단일 경로로 연결합니다.

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

두 경로 구성 요소를 단일 경로로 연결합니다.

Join(String[])

경로 배열을 단일 경로에 연결합니다.

Join(String, String)

두 경로를 단일 경로에 연결합니다.

Join(String, String, String, String)

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

4개의 경로를 단일 경로로 연결합니다.

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

매개 변수

path1
String

조인할 첫 번째 경로입니다.

path2
String

조인할 두 번째 경로입니다.

path3
String

조인할 세 번째 경로입니다.

path4
String

조인할 네 번째 경로입니다.

반환

연결된 경로입니다.

설명

이 메서드는 단순히 path, path2, path3path4 연결하고 경로 구성 요소가 아직 없는 경우 경로 구성 요소 사이에 디렉터리 구분 기호 문자를 추가합니다. path1, path2, path3 또는 path4 인수의 길이가 0이면 메서드는 나머지 인수를 연결합니다. 연결된 결과 문자열의 길이가 0이면 메서드는 String.Empty반환합니다.

path1 또는 path2 또는 path3 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 문자를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, path2, path3 또는 path4 절대 경로인 경우 Join 메서드는 Combine 메서드처럼 이전 경로를 삭제하지 않습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "temp", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

적용 대상

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

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

4개의 경로 구성 요소를 단일 경로로 연결합니다.

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

매개 변수

path1
ReadOnlySpan<Char>

조인할 첫 번째 경로를 포함하는 문자 범위입니다.

path2
ReadOnlySpan<Char>

조인할 두 번째 경로를 포함하는 문자 범위입니다.

path3
ReadOnlySpan<Char>

조인할 세 번째 경로를 포함하는 문자 범위입니다.

path4
ReadOnlySpan<Char>

조인할 네 번째 경로를 포함하는 문자 범위입니다.

반환

연결된 경로입니다.

설명

이 메서드는 단순히 path, path2, path3path4 연결하고 경로 구성 요소가 아직 없는 경우 경로 구성 요소 사이에 디렉터리 구분 기호 문자를 추가합니다. path1, path2, path3 또는 path4 인수의 Length 0이면 메서드는 나머지 인수를 연결합니다. 모든 구성 요소의 ReadOnlySpan<T>.Length 0이면 메서드는 String.Empty반환합니다.

path1 또는 path2 또는 path3 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 문자를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, path2, path3 또는 path4 절대 경로인 경우 Join 메서드는 Combine 메서드처럼 이전 경로를 삭제하지 않습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "temp", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

적용 대상

Join(String, String, String)

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

세 개의 경로를 단일 경로로 연결합니다.

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

매개 변수

path1
String

조인할 첫 번째 경로입니다.

path2
String

조인할 두 번째 경로입니다.

path3
String

조인할 세 번째 경로입니다.

반환

연결된 경로입니다.

설명

이 메서드는 단순히 path연결, path2path3 연결 하 고 아직 없는 경우 경로 구성 요소 간에 디렉터리 구분 기호 문자를 추가 합니다. path1, path2 또는 path3 인수의 길이가 0이면 메서드는 나머지 인수를 연결합니다. 연결된 결과 문자열의 길이가 0이면 메서드는 String.Empty반환합니다.

path1 또는 path2 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 문자를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, path2 또는 path3 절대 경로인 경우 Join 메서드는 Combine 메서드처럼 이전 경로를 삭제하지 않습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "temp", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

적용 대상

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

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

세 개의 경로 구성 요소를 단일 경로로 연결합니다.

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

매개 변수

path1
ReadOnlySpan<Char>

조인할 첫 번째 경로를 포함하는 문자 범위입니다.

path2
ReadOnlySpan<Char>

조인할 두 번째 경로를 포함하는 문자 범위입니다.

path3
ReadOnlySpan<Char>

조인할 세 번째 경로를 포함하는 문자 범위입니다.

반환

연결된 경로입니다.

예제

다음 예제에서는 Path.Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>)Path.Combine(String, String, String) 메서드에서 반환된 경로의 차이를 보여 줍니다. 첫 번째 문자열이 드라이브 및 루트 디렉터리를 포함하는 정규화된 경로이고 두 번째 문자열이 첫 번째 경로의 상대 경로인 경우 두 메서드는 동일한 결과를 생성합니다. ShowPathInformation 메서드에 대한 두 번째 및 세 번째 호출에서는 두 메서드가 반환한 문자열이 분기됩니다. 두 번째 메서드 호출에서 첫 번째 문자열 인수는 드라이브이고 두 번째 문자열 인수는 루트 디렉터리입니다. Join 메서드는 두 문자열을 연결하고 중복 경로 구분 기호를 유지합니다. GetFullPath 메서드를 호출하면 중복이 제거됩니다. Combine 메서드는 드라이브를 중단하고 현재 드라이브에 루팅된 디렉터리를 반환합니다. 애플리케이션의 현재 드라이브가 C:\이고 문자열이 디렉터리의 파일 또는 파일에 액세스하는 데 사용되는 경우 D: 대신 C:에 액세스합니다. 마지막으로 ShowPathInformation 대한 세 번째 호출의 마지막 인수가 루팅되므로 Join 메서드는 처음 두 인수에 추가하여 무의미한 파일 경로를 만드는 반면 Combine 메서드는 처음 두 문자열을 삭제하고 세 번째 문자열을 반환합니다. 파일 액세스에 이 문자열을 사용하면 애플리케이션에서 중요한 파일에 의도하지 않게 액세스할 수 있습니다.

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'

설명

이 메서드는 단순히 path연결, path2path3 연결 하 고 아직 없는 경우 경로 구성 요소 간에 디렉터리 구분 기호 문자를 추가 합니다. path1, path2또는 path3 인수의 Length 0이면 메서드는 나머지 인수를 연결합니다. 모든 구성 요소의 ReadOnlySpan<T>.Length 0이면 메서드는 String.Empty반환합니다.

path1 또는 path2 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 문자를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, path2 또는 path3 절대 경로인 경우 Join 메서드는 Combine 메서드처럼 이전 경로를 삭제하지 않습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "temp", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

추가 정보

  • Windows 시스템 파일 경로 형식

적용 대상

Join(ReadOnlySpan<String>)

경로 범위를 단일 경로로 연결합니다.

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

매개 변수

paths
ReadOnlySpan<String>

경로 범위입니다.

반환

연결된 경로입니다.

적용 대상

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

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

두 경로 구성 요소를 단일 경로로 연결합니다.

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

매개 변수

path1
ReadOnlySpan<Char>

조인할 첫 번째 경로를 포함하는 문자 범위입니다.

path2
ReadOnlySpan<Char>

조인할 두 번째 경로를 포함하는 문자 범위입니다.

반환

결합된 경로입니다.

예제

다음 예제에서는 Path.Join(ReadOnlySpan<Char>, ReadOnlySpan<Char>)Path.Combine(String, String) 메서드에서 반환된 경로의 차이를 보여 줍니다. 첫 번째 문자열이 드라이브 및 루트 디렉터리를 포함하는 정규화된 경로이고 두 번째 문자열이 첫 번째 경로의 상대 경로인 경우 두 메서드는 동일한 결과를 생성합니다. ShowPathInformation 메서드에 대한 두 번째 및 세 번째 호출에서는 두 메서드가 반환한 문자열이 분기됩니다. 두 번째 메서드 호출에서 첫 번째 문자열 인수는 드라이브이고 두 번째 문자열 인수는 루트 디렉터리입니다. Join 메서드는 두 문자열을 연결하고 중복 경로 구분 기호를 유지합니다. Combine 메서드는 드라이브를 중단하고 현재 드라이브에 루팅된 디렉터리를 반환합니다. 애플리케이션의 현재 드라이브가 C:\이고 문자열이 디렉터리의 파일 또는 파일에 액세스하는 데 사용되는 경우 D: 대신 C:에 액세스합니다. 마지막으로, ShowPathInformation 대한 세 번째 호출의 두 인수가 모두 루팅되므로 Join 메서드는 단순히 추가하여 무의미한 파일 경로를 만드는 반면 Combine 메서드는 첫 번째 문자열을 삭제하고 두 번째 문자열을 반환합니다. 파일 액세스에 이 문자열을 사용하면 애플리케이션에서 중요한 파일에 의도하지 않게 액세스할 수 있습니다.

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/'

설명

이 메서드는 path 연결하고 path2path1 끝이나 path2시작 부분에 없는 경우 두 경로 구성 요소 사이에 디렉터리 구분 기호 문자를 추가합니다. path1 또는 path2Length 0이면 메서드는 다른 경로를 반환합니다. path1path2 모두의 Length 0이면 메서드는 String.Empty반환합니다.

path1 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 문자를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, path2 절대 경로인 경우 Join 메서드는 path1 삭제하지 않고 Combine 메서드처럼 path2 반환하지 않습니다. 다음 예제에서는 두 메서드에서 반환된 경로의 차이를 보여 줍니다. path2 원본이 사용자 입력인 경우 Combine 메서드를 사용하면 애플리케이션에서 액세스할 수 없도록 하려는 파일 시스템 리소스(예: C:/Users/User1/Documents/Financial/)에 액세스할 수 있습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

추가 정보

  • Windows 시스템 파일 경로 형식

적용 대상

Join(String[])

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

경로 배열을 단일 경로에 연결합니다.

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

매개 변수

paths
String[]

경로 배열입니다.

반환

연결된 경로입니다.

설명

이 메서드는 단순히 paths 모든 문자열을 연결하고 아직 없는 경우 경로 구성 요소 사이에 디렉터리 구분 기호 문자를 추가합니다. paths 경로의 Length 0이면 메서드는 나머지 인수를 연결합니다. 연결된 문자열의 길이가 0이면 메서드는 String.Empty반환합니다.

마지막 경로를 제외한 paths경로가 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 경로를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, 첫 번째 경로를 제외하고 paths경로 중 하나가 절대 경로인 경우 Join 메서드는 Combine 메서드처럼 이전 경로를 삭제하지 않습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "temp", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

적용 대상

Join(String, String)

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

두 경로를 단일 경로에 연결합니다.

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

매개 변수

path1
String

조인할 첫 번째 경로입니다.

path2
String

조인할 두 번째 경로입니다.

반환

연결된 경로입니다.

설명

이 메서드는 단순히 path 연결 하 고 path2 아직 없는 경우 경로 구성 요소 간에 디렉터리 구분 기호 문자를 추가 합니다. path1 또는 path2 길이가 0이면 메서드는 나머지 인수를 연결합니다. 연결된 결과 문자열의 길이가 0이면 메서드는 String.Empty반환합니다.

path1 대상 플랫폼에 적합하지 않은 경로 구분 기호 문자로 끝나는 경우 Join 메서드는 원래 경로 구분 기호 문자를 유지하고 지원되는 문자를 추가합니다. 이 문제는 Unix 기반 시스템에서 경로 구분 기호로 인식되지 않는 Windows 백슬래시("\") 문자를 사용하는 하드 코딩된 경로에서 발생합니다. 이 문제를 해결하려면 다음을 수행할 수 있습니다.

Combine 메서드와 달리 Join 메서드는 반환된 경로의 루트를 시도하지 않습니다. 즉, path2 절대 경로인 경우 Join 메서드는 Combine 메서드처럼 이전 경로를 삭제하지 않습니다.

이러한 문자를 검색 와일드카드 문자에 사용할 수 있으므로 디렉터리 및 파일 이름에 대한 모든 잘못된 문자가 Join 메서드에서 허용되지 않는 것으로 해석되는 것은 아닙니다. 예를 들어 파일을 만들 때 Path.Join("c:\\", "temp", "*.txt") 유효하지 않을 수 있지만 검색 문자열로 유효합니다. 따라서 Join 메서드는 성공적으로 해석합니다.

적용 대상