19대 대선 선관위에서 데이터를 받아오는 프로그램을 개발하였다.


특이하게, url을 치고 들어가면


해당 페이지내에 디렉토리 및 파일이 존재하였다.


그때, url을 호출하여 해당 디렉토리에 존재하는 파일 (a 태그)들의 정보를 가져오는 소스이다.


/// <summary>

/// 마지막 최신 파일 이름을 가져옵니다.

/// </summary>

/// <param name="url">주소입니다.</param>

/// <returns></returns>

static private ReturnValue GetFileName(string url) {

    var rst = new ReturnValue(false, "실패하였습니다.");


    WebRequest request = WebRequest.Create(url);

    WebResponse response = request.GetResponse();

    Regex regex = new Regex("<a href=\".*\">(?<name>.*)</a>");


    using (var reader = new StreamReader(response.GetResponseStream())) {

        string result = reader.ReadToEnd();

        MatchCollection matches = regex.Matches(result.ToLower());

        if (matches.Count == 0) {

            rst.Success = false;

            return rst;

        }


        foreach (Match match in matches) {

            if (!match.Success) { continue; }

            if (match.Groups["name"].ToString().Contains("xml")) {

                rst.Success = true;

                rst.Value = match.Groups["name"].ToString();

            }

        }

    }

    return rst;

}

'개발 > C#' 카테고리의 다른 글

Interface 란?  (0) 2018.01.29
[C#] Linq, SingleOrDefault() vs FirstOrDefault()  (0) 2017.09.01
Zip 파일 압축풀기  (0) 2017.05.10
JsonConvert Dll  (0) 2015.12.10
Class 내의 다른 Class 사용 시  (0) 2015.12.09

+ Recent posts