Path.TryJoin メソッド

定義

個々のパス コンポーネントを事前に割り当てられた文字範囲に連結することを試み、この操作が成功したかどうかを示す値を返します。

オーバーロード

TryJoin(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>, Span<Char>, Int32)

3 つのパス コンポーネントを 1 つの事前に割り当てられた文字スパンに連結しようとし、操作が成功したかどうかを示す値を返します。

TryJoin(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Span<Char>, Int32)

2 つのパス コンポーネントを事前に割り当てられた単一の文字範囲に連結することを試み、この操作が成功したかどうかを示す値を返します。

注釈

変換先の文字スパンは、連結されたパスを保持するのに十分な大きさである必要があります。 次の例に示すように、メソッドを Span<T>.Slice 呼び出すことによって連結されたパスを取得できます。

using System;
using System.IO;

class Program
{
    static void Main()
    {
        int nChars = 0;
        var buffer = new Span<Char>(new String(' ', 100).ToCharArray());
        var flag = Path.TryJoin("C:/".AsSpan(), "Users/user1".AsSpan(), buffer, out nChars);
        if (flag) 
            Console.WriteLine($"Wrote {nChars} characters: '{buffer.Slice(0, nChars).ToString()}'");
        else
            Console.WriteLine("Concatenation operation failed.");
    }
}

TryJoin(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>, Span<Char>, Int32)

3 つのパス コンポーネントを 1 つの事前に割り当てられた文字スパンに連結しようとし、操作が成功したかどうかを示す値を返します。

public:
 static bool TryJoin(ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, ReadOnlySpan<char> path3, Span<char> destination, [Runtime::InteropServices::Out] int % charsWritten);
public static bool TryJoin (ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, ReadOnlySpan<char> path3, Span<char> destination, out int charsWritten);
static member TryJoin : ReadOnlySpan<char> * ReadOnlySpan<char> * ReadOnlySpan<char> * Span<char> * int -> bool
Public Shared Function TryJoin (path1 As ReadOnlySpan(Of Char), path2 As ReadOnlySpan(Of Char), path3 As ReadOnlySpan(Of Char), destination As Span(Of Char), ByRef charsWritten As Integer) As Boolean

パラメーター

path1
ReadOnlySpan<Char>

結合する最初のパスを含む文字範囲。

path2
ReadOnlySpan<Char>

結合する 2 番目のパスを含む文字範囲。

path3
ReadOnlySpan<Char>

結合する 3 番目のパスを含む文字範囲。

destination
Span<Char>

連結されたパスを保持する文字範囲。

charsWritten
Int32

メソッドから制御が戻ったときに、destination に書き込まれた文字数を示す値。

戻り値

Boolean

連結操作が正常に終了した場合は true。それ以外の場合は false

注釈

destination は、連結されたパスを保持するのに十分な大きさである必要があります。 次の例に示すように、メソッドを呼び出 Span<T>.Slice すことによって連結されたパスを取得できます。

こちらもご覧ください

適用対象

TryJoin(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Span<Char>, Int32)

2 つのパス コンポーネントを事前に割り当てられた単一の文字範囲に連結することを試み、この操作が成功したかどうかを示す値を返します。

public:
 static bool TryJoin(ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, Span<char> destination, [Runtime::InteropServices::Out] int % charsWritten);
public static bool TryJoin (ReadOnlySpan<char> path1, ReadOnlySpan<char> path2, Span<char> destination, out int charsWritten);
static member TryJoin : ReadOnlySpan<char> * ReadOnlySpan<char> * Span<char> * int -> bool
Public Shared Function TryJoin (path1 As ReadOnlySpan(Of Char), path2 As ReadOnlySpan(Of Char), destination As Span(Of Char), ByRef charsWritten As Integer) As Boolean

パラメーター

path1
ReadOnlySpan<Char>

結合する最初のパスを含む文字範囲。

path2
ReadOnlySpan<Char>

結合する 2 番目のパスを含む文字範囲。

destination
Span<Char>

連結されたパスを保持する文字範囲。

charsWritten
Int32

メソッドから制御が戻ったときに、destination に書き込まれた文字数を示す値。

戻り値

Boolean

連結操作が正常に終了した場合は true。それ以外の場合は false

注釈

destination は、連結されたパスを保持するのに十分な大きさである必要があります。 次の例に示すように、メソッドを呼び出 Span<T>.Slice すことによって連結されたパスを取得できます。

こちらもご覧ください

適用対象