첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

▶ Uri 클래스 : TryCreate 정적 메소드를 사용해 URL에서 파일명 구하기 예제

Console.WriteLine(GetFileName(""));                                         // ""
Console.WriteLine(GetFileName("test"));                                     // "test"
Console.WriteLine(GetFileName("test.xml"));                                 // "test.xml"
Console.WriteLine(GetFileName("/test.xml"));                                // "test.xml"
Console.WriteLine(GetFileName("/test.xml?q=1"));                            // "test.xml"
Console.WriteLine(GetFileName("/test.xml?q=1&x=3"));                        // "test.xml"
Console.WriteLine(GetFileName("test.xml?q=1&x=3"));                         // "test.xml"
Console.WriteLine(GetFileName("http://www.a.com/test.xml?q=1&x=3"));        // "test.xml"
Console.WriteLine(GetFileName("http://www.a.com/test.xml?q=1&x=3#aidjsf")); // "test.xml"
Console.WriteLine(GetFileName("http://www.a.com/a/b/c/d"));                 // "d"
Console.WriteLine(GetFileName("http://www.a.com/a/b/c/d/e/"));              // ""

 

300x250

 

▶ Uri 클래스 : TryCreate 정적 메소드를 사용해 URL에서 파일명 구하기

/// <summary>
/// 테스트 URI
/// </summary>
private readonly static Uri _testURI = new Uri("http://canbeanything");

#region 파일명 구하기 - GetFileName(url)

/// <summary>
/// 파일명 구하기
/// </summary>
/// <param name="url">URL</param>
/// <returns>파일명</returns>
public string GetFileName(string url)
{
    if(!Uri.TryCreate(url, UriKind.Absolute, out Uri uri))
    {
        uri = new Uri(_testURI, url);
    }

    return Path.GetFileName(uri.LocalPath);
}

#endregion
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요