C# 예외 처리

    [C#] 예외 필터 (exception filter)

    [C#] 예외 필터 (exception filter)

    1. 핵심 정리 using System; using System.Net; class Program { static void Main() { WebClient wc = new WebClient(); try { stirng s = wc.DownloadString("http://wwww.nnaver.ccom"); } catch(WebException e) { if(e.Status == WebExceptionStatus.NameResolutionFailure) Console.WriteLine("URL 입력 에러"); else if(e.Status == WebExceptionStatus.Timeout) Console.WriteLine("시간 초과"); else Console.WriteLine("다른 문제"); }..

    [C#] 예외를 처리하는 방법 (catch, Exception, rethrow)

    [C#] 예외를 처리하는 방법 (catch, Exception, rethrow)

    1. try ~ catch using System; using System.Net; class Program { static void Main() { WebClient wc = new Webclient(); string s = wc.DownloadString("http://www.naver.com"); Console.WriteLine(s); } } 웹클라이언트 객체를 만들어 주소의 소스를 받는 코드이다. 위 코드는 문제없이 네이버의 코드를 불러오는데 실수로 주소를 다르게 입력하거나 입력하지 않는다면 예외가 일어난다. 이러한 예외 처리는 어떻게 해야할까? 문제가 일어나는 부분의 메소드를 우클릭 후 정의로 이동해보면 알 수 있다. 정의로 이동 후 왼쪽 +버튼을 눌러 펼처보면 친절하게 예외에 대한 설명이 있다..

    [C#] 예외 처리

    [C#] 예외 처리

    0. 개요 using System; public static class FileManager { public static int CopyFile(string srcFileName, string dstFileName) { // ... return 100; } } class Program { static void Main() { FileManager.CopyFile("C:\\a.txt", "D:\\b.txt"); } } 위와 같이 파일 이름을 인자로 받아 앞의 인자의 내용을 뒤의 인자로 복사하는 코드가 있다고 해보자. 복사를 하면 복사한 양을 리턴해주게끔까지 해놓았다. 그런데 이러한 코드가 항상 성공한다는 보장이 없다. 사용자가 이름을 실수할 수도 있고, 접근 권한이 없을 수도 있는 등 실패할 가능성도 있다..