C#에서는 DateTime 객체끼리 빼기 연산을 수행하면 그 결과로 TimeSpan 객체가 반환됩니다. 이 TimeSpan 객체의 TotalSeconds 속성을 사용하면 두 날짜(시각) 사이의 차이를 초 단위로 손쉽게 구할 수 있습니다.1. 두 날짜 설정하기먼저 비교할 두 개의 날짜를 생성합니다. 아래 예제에서는 시, 분, 초까지 포함하여 설정했습니다.DateTime date1 = new DateTime(2018, 7, 15, 08, 15, 20); DateTime date2 = new DateTime(2018, 7, 15, 11,
C#에서 두 날짜 사이의 시간 차이를 분 단위로 계산하려면 DateTime 객체끼리 빼기 연산을 수행하여 TimeSpan 객체를 얻은 뒤, TotalMinutes 속성을 사용하면 됩니다. 아래에서 단계별로 자세히 살펴보겠습니다.1단계: 두 개의 날짜 설정하기먼저 비교할 두 개의 DateTime 객체를 생성합니다.DateTime date1 = new DateTime(2018, 7, 15, 08, 15, 20); DateTime date2 = new DateTime(2018, 8, 17, 11, 14, 25);2단계: 두 날짜의 차이
C# Console.WindowLeft 속성이란?Console.WindowLeft 속성은 콘솔 창 영역의 가장 왼쪽 위치를 화면 버퍼(screen buffer)를 기준으로 가져오거나 설정합니다. 반환되는 값은 정수(int)형이며, 콘솔 창이 화면 버퍼 안에서 수평 방향으로 몇 번째 열부터 표시되는지를 나타냅니다.이 속성은 System 네임스페이스의 Console 클래스에 포함되어 있어 별도의 설치 없이 바로 사용할 수 있습니다.가장 왼쪽 위치 가져오기콘솔 창의 가장 왼쪽 위치를 얻으려면 먼저 결과를 저장할 정수형 변수를 선언합니다.
C#에서 두 날짜 사이의 시간 차이를 밀리초 단위로 구하는 방법을 알아보겠습니다. 먼저 비교할 두 개의 DateTime 객체가 있다고 가정해 보겠습니다.DateTime date1 = new DateTime(2018, 8, 11, 08, 15, 20); DateTime date2 = new DateTime(2018, 8, 11, 11, 14, 25);두 날짜의 차이는 DateTime 객체끼리 빼기 연산을 수행하면 TimeSpan 형태로 손쉽게 얻을 수 있습니다.TimeSpan ts = date2 - date1;이제 밀리초 단위의 전체
C#에서 특정 형식을 IEnumerable에 해당하는 형식으로 캐스팅하려면 AsEnumerable() 메서드를 사용하면 됩니다. 이 메서드는 System.Linq 네임스페이스에 포함된 확장 메서드(Extension Method)로, 배열이나 컬렉션을 IEnumerable<T> 타입으로 변환해 LINQ 연산을 더 유연하게 활용할 수 있게 해줍니다.예제 소개이번 예제에서는 정수형 배열을 하나 선언하고, 각 요소에 값을 할당한 뒤 이를 IEnumerable로 변환하는 과정을 살펴보겠습니다.먼저 크기가 10인 int 배열을 선언
C#에서 시퀀스의 요소들이 특정 조건을 모두 만족하는지 확인하려면 All() 메서드를 사용하면 됩니다. 이 메서드는 System.Linq 네임스페이스에 포함되어 있으며, 시퀀스의 모든 요소가 지정된 조건을 충족하면 True를 반환하고, 단 하나의 요소라도 조건을 만족하지 않으면 False를 반환합니다.조건을 설정할 때는 람다 식(Lambda Expression)을 활용합니다. 예를 들어, 배열의 모든 요소가 20보다 큰지 검사하는 조건은 다음과 같이 작성할 수 있습니다.myArr.AsQueryable().All(val => v
C#에서 오늘 날짜의 요일을 확인하고 싶다면 DateTime 구조체의 DayOfWeek 속성을 사용하면 됩니다. 이 속성은 현재 시스템 날짜에 해당하는 요일을 DayOfWeek 열거형(enum) 값으로 반환합니다.DayOfWeek 속성 사용하기먼저 DateTime.Today로 오늘 날짜를 가져온 뒤, 그날의 요일을 변수에 담습니다.DayOfWeek wk = DateTime.Today.DayOfWeek;이렇게 선언한 wk 변수를 출력하면 현재 요일이 화면에 표시됩니다.전체 예제 코드아래는 현재 요일을 가져와 콘솔에 출력하는 완전한 C
C#에서 현재 월을 표시하려면 먼저 DateTime.Now를 사용하여 현재 날짜와 시간을 가져와야 합니다.DateTime dt = DateTime.Now;그다음 Month 속성에 접근하면 현재 월을 숫자 값으로 손쉽게 얻을 수 있습니다.dt.Month전체 코드를 살펴보겠습니다.예제 1: 현재 월을 숫자로 출력using System; using System.Linq; public class Demo { public static void Main() { &nbs
C#에서 DateTime은 값 형식(value type)이기 때문에 참조 형식처럼 null을 직접 할당할 수 없습니다. 따라서 날짜 변수를 비어 있는 상태로 초기화하려면 다른 방법이 필요합니다.DateTime.MinValue로 초기화하기가장 일반적인 방법은 DateTime을 최솟값으로 설정하는 것입니다. 이를 위해 정적 속성인 DateTime.MinValue를 사용합니다.DateTime.MinValue;위 코드는 다음과 같은 최솟값을 표시합니다.1/1/0001즉, 날짜에 null을 더해 빈 값으로 초기화하려는 시도 대신, DateT
C#에서 일반 날짜 짧은 시간("g") 형식 지정자는 짧은 날짜 패턴("d")과 짧은 시간 패턴("t")을 공백으로 구분하여 결합한 표준 날짜 및 시간 형식 지정자입니다. 이 지정자를 사용하면 간결하고 읽기 쉬운 형태로 날짜와 시간을 함께 출력할 수 있습니다.DateTime 객체 생성먼저 DateTime 구조체를 사용해 특정 날짜와 시간을 설정합니다.DateTime dt = new DateTime(2018, 10, 2, 7, 59, 20);"g" 형식 지정자 적
C#에서 날짜와 시간이 가질 수 있는 최대값을 설정하려면 DateTime 구조체의 MaxValue 속성을 사용하면 됩니다. 이 속성은 DateTime 타입이 표현할 수 있는 가장 늦은 날짜와 시간을 반환합니다.DateTime max = DateTime.MaxValue;위 코드는 max 변수에 날짜/시간의 최대값을 저장합니다. 이제 Console.WriteLine() 메서드를 사용하여 max 값을 화면에 출력해 보겠습니다.예제 코드using System; using System.Linq; public class Demo { p
C#에서는 LINQ의 TakeLast() 메서드를 사용하면 배열이나 컬렉션의 끝에서 지정된 개수만큼의 요소를 손쉽게 추출할 수 있습니다. 이 메서드는 .NET Core 2.0 이상부터 사용할 수 있으며, 마지막 N개의 데이터만 필요한 경우 코드를 매우 간결하게 만들어 줍니다.먼저 정수형 배열을 선언하고 초기화해 보겠습니다.int[] prod = { 110, 290, 340, 540, 456, 698, 765, 789 };이제 TakeLast(3)를 호출하여 배열의 마지막 세 개 요소를 가져옵니다.IEnumerable<int&g
C#의 TimeSpan 구조체는 두 시점 사이의 시간 간격, 즉 시간의 길이를 나타냅니다. 날짜와 시간 자체가 아니라 기간을 표현한다는 점이 특징입니다.TimeSpan이 표현할 수 있는 최솟값을 구하려면 MinValue 속성을 사용하면 됩니다.TimeSpan.MinValue예제 코드다음 예제는 TimeSpan.MinValue 속성을 출력하여 TimeSpan의 최솟값을 확인하는 방법을 보여줍니다.using System; using System.Linq; public class Demo { public static void M
C#에서 TimeSpan은 시간 간격(기간)을 나타내는 구조체로, 두 날짜 사이의 차이나 특정 기간의 길이를 표현할 때 사용됩니다.TimeSpan이 가질 수 있는 최대값을 구하려면 다음 정적 속성을 사용하면 됩니다.TimeSpan.MaxValue예제 코드아래 예제는 TimeSpan의 최대값을 콘솔에 출력하는 간단한 프로그램입니다.using System;using System.Linq;public class Demo { public static void Main() { &n
C#에서 음수 값으로 표현된 TimeSpan의 절대값을 구하려면 Duration() 메서드를 사용하면 됩니다. 이 메서드는 TimeSpan 객체의 부호를 제거하고, 순수한 지속 시간(duration)만을 반환합니다.TimeSpan 객체 생성먼저 다음과 같이 음수 값을 가진 TimeSpan 객체를 생성해 보겠습니다.TimeSpan ts = new TimeSpan(-7, -50, -25);Duration() 메서드로 절대값 구하기생성된 TimeSpan의 절대값은 Duration() 메서드를 호출하여 간단히 얻을 수 있습니다.TimeSp
C#에서 Console.BufferHeight 속성은 콘솔 화면의 버퍼 영역(buffer area) 높이를 가져오거나(get) 설정하는(set) 데 사용됩니다.버퍼 높이란 화면에 실제로 표시되는 창 크기와 별개로, 스크롤을 통해 확인할 수 있는 콘솔 출력 영역의 전체 행(row) 수를 의미합니다. 이 값을 조절하면 콘솔 창에서 위아래로 스크롤하며 볼 수 있는 내용의 양을 제어할 수 있습니다.속성 사용 방법BufferHeight 속성은 다음과 같은 형태로 사용합니다.Console.BufferHeight전체 예제 코드아래는 현재 콘솔
PadLeft 메서드란? C#의 PadLeft() 메서드를 사용하면 문자열의 시작 부분(왼쪽)을 공백으로 채워 지정한 전체 길이만큼 맞출 수 있습니다. 공백뿐만 아니라 특정 유니코드 문자를 패딩 문자로 지정하는 것도 가능합니다. 기본 사용법 먼저 다음과 같은 문자열이 있다고 가정해 보겠습니다. string myStr = DemoOne; 위 문자열의 앞부분에 패딩을 추가하려면 PadLeft 메서드를 호출하고, 괄호 안에 결과 문자열의 전체 길이를 지정하면 됩니다. myStr.PadLeft(10); DemoOne은 7자이므로, 위 코
C#에서 빈 리스트를 다룰 때 요소를 조회하려고 하면 예외가 발생할 수 있습니다. 이런 상황에서 오류 없이 안전하게 기본값을 얻으려면 FirstOrDefault() 메서드를 사용하는 것이 좋습니다.빈 리스트 생성먼저 요소가 하나도 없는 리스트를 만들어 보겠습니다.List<float> val = new List<float> { };FirstOrDefault()로 기본값 가져오기리스트에 요소가 존재하지 않으면 FirstOrDefault()는 해당 타입의 기본값을 반환합니다. float 타입의 경우 기본값은 0입니다
C#의 TimeSpan 구조체에는 시간 간격을 다루는 두 가지 대표적인 속성이 있습니다. Seconds는 TimeSpan 값 중 초 구성 요소만 반환하는 반면, TotalSeconds는 전체 시간 간격을 초 단위로 변환하여 반환합니다. 이번 글에서는 두 속성의 차이를 예제 코드와 함께 자세히 알아보겠습니다. 1. TimeSpan Seconds 속성 Seconds 속성은 TimeSpan 객체가 나타내는 시간 간격 중 초(0~59) 구성 요소만 정수(int) 형태로 반환합니다. 즉, 일, 시간, 분 등 다른 단위는 고려하지 않고 오
C# Convert.ToChar 메서드란?Convert.ToChar 메서드는 지정된 숫자 값을 그에 대응하는 유니코드(Unicode) 문자로 변환하는 기능을 제공합니다. 이 메서드는 System 네임스페이스의 Convert 클래스에 속해 있으며, 정수 형태의 코드 값을 실제 문자(char)로 바꿀 때 유용하게 사용됩니다.기본 사용법먼저 sbyte 형식의 변수를 선언한 뒤, Convert.ToChar() 메서드를 호출하면 해당 값이 문자로 변환됩니다.sbyte byteVal = 111;char charVal = Convert.ToCh