Path.ChangeExtension(String, String) 메서드

정의

경로 문자열의 확장을 변경합니다.

public:
 static System::String ^ ChangeExtension(System::String ^ path, System::String ^ extension);
public static string ChangeExtension(string path, string extension);
public static string? ChangeExtension(string? path, string? extension);
static member ChangeExtension : string * string -> string
Public Shared Function ChangeExtension (path As String, extension As String) As String

매개 변수

path
String

수정할 경로 정보입니다.

extension
String

새 확장(선행 기간 포함 또는 제외)입니다. 에서 기존 확장을 null제거하도록 지정 path 합니다.

반품

수정된 경로 정보입니다.

Windows 기반 데스크톱 플랫폼에서 pathnull 또는 빈 문자열("")인 경우 경로 정보는 수정되지 않은 상태로 반환됩니다. 이 extension경우 null 반환된 문자열에는 확장이 제거된 지정된 경로가 포함됩니다. 확장 path 이 없고 그렇지 않은 extension경우 null 반환된 경로 문자열의 끝에 extension추가된 경로 문자열이 포함됩니다path.

예외

.NET Framework 및 .NET Core 버전이 2.1보다 오래된 경우: path 에 정의된 잘못된 문자가 하나 이상 포함되어 있습니다 GetInvalidPathChars().

예제

다음 예제에서는 메서드를 사용하는 방법을 보여 줍니다 ChangeExtension .

using System;
using System.IO;

public class PathSnippets
{

    public void ChangeExtension()
    {
        string goodFileName = @"C:\mydir\myfile.com.extension";
        string badFileName = @"C:\mydir\";
        string result;

        result = Path.ChangeExtension(goodFileName, ".old");
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'",
            goodFileName, result);

        result = Path.ChangeExtension(goodFileName, "");
        Console.WriteLine("ChangeExtension({0}, '') returns '{1}'",
            goodFileName, result);

        result = Path.ChangeExtension(badFileName, ".old");
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'",
            badFileName, result);

        // This code produces output similar to the following:
        //
        // ChangeExtension(C:\mydir\myfile.com.extension, '.old') returns 'C:\mydir\myfile.com.old'
        // ChangeExtension(C:\mydir\myfile.com.extension, '') returns 'C:\mydir\myfile.com.'
        // ChangeExtension(C:\mydir\, '.old') returns 'C:\mydir\.old'
Imports System.IO

Public Class PathSnippets
    Public Sub ChangeExtension()
        Dim goodFileName As String = "C:\mydir\myfile.com.extension"
        Dim badFileName As String = "C:\mydir\"
        Dim result As String
        result = Path.ChangeExtension(goodFileName, ".old")
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'", goodFileName, result)
        result = Path.ChangeExtension(goodFileName, "")
        Console.WriteLine("ChangeExtension({0}, '') returns '{1}'", goodFileName, result)
        result = Path.ChangeExtension(badFileName, ".old")
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'", badFileName, result)

        ' This code produces output similar to the following:
        '
        ' ChangeExtension(C:\mydir\myfile.com.extension, '.old') returns 'C:\mydir\myfile.com.old'
        ' ChangeExtension(C:\mydir\myfile.com.extension, '') returns 'C:\mydir\myfile.com.'
        ' ChangeExtension(C:\mydir\, '.old') returns 'C:\mydir\.old'

설명

마침표(.) path 를 포함하지 않으면 extensionChangeExtension 마침표가 추가됩니다.

매개 변수는 extension 여러 마침표와 유효한 경로 문자를 포함할 수 있으며 모든 길이일 수 있습니다. 이 extension경우 null 반환된 문자열에는 마지막 마침표와 그 다음의 path 모든 문자가 제거된 내용이 포함됩니다.

빈 문자열인 경우 extension 반환된 경로 문자열에는 마지막 기간 이후에 제거된 모든 문자의 path 내용이 포함됩니다.

확장명이 없는 경우 path 반환된 extension문자열 뒤에 .가 포함됩니다 nullpath.extension

선행 기간이 아니 extension 고 선행 마침표가 포함되지 않은 경우 null 마침표가 추가됩니다.

여러 마침표로 구분된 여러 확장이 포함된 경우 path 반환된 문자열에는 마지막 마침표와 그 다음pathextension 모든 문자의 내용이 포함됩니다. 예를 들어 "\Dir1\examples\pathtests.csx.txt"이고 path "cs"인 경우 extension 수정된 경로는 "\Dir1\examples\pathtests.csx.cs"입니다.

반환된 결과가 모든 시나리오에서 유효한지 확인할 수 없습니다. 예를 들어 비어 path 있으면 extension 추가됩니다.

일반적인 I/O 작업 목록은 일반적인 I/O 작업을 참조하세요.

적용 대상

추가 정보