C#/C#200제

[C#] 13일차 - 86. TimeSapn 구조체의 사용 방법

반나무 2021. 2. 9. 18:30

TimeSpan은 두 시간의 간격을 나타냅니다. 

TImeSpan객체는 양수 또는 음수로 측정되는 시간 간격을 일, 시간, 분, 초 몇초의 소수부로 나타냅니다.

 

TimeSpan은 암시적 또는 명시적 생성자를 사용하여 만듭니다.

 

TimeSpan interval = new TimeSapn();
TimeSpan interval = new TimeSapn(2,14,18); // 2시간 14분 18초

 

 

두 개의 DateTime인스턴스를 뺴면 TimeSpan값이 됩니다.

DateTime departure = new DateTime(2010, 6, 12, 18, 32, 0);
DateTime arrival = new DateTime(2010, 6, 13, 22, 47, 0);
TimeSpan travalTime = arrival - departure;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace A086_TimeSpan
{
    class Program
    {
        static void Main(string[] args)
        {
            DateTime christmas = new DateTime(2021, 12, 25);
            DateTime newYearsDay = new DateTime(2022, 1, 1);

            TimeSpan span = newYearsDay - christmas;
            // TimeSpan span = newYearsDay.Subtract(christmas);

            Console.WriteLine("크리스마스와 1월1일의 시간 간격");
            Console.WriteLine("{0,14} 일", span.Days);
            Console.WriteLine("{0,14} 시간", span.Hours);
            Console.WriteLine("{0,14} 분", span.Minutes);
            Console.WriteLine("{0,14} 초", span.Seconds);
            Console.WriteLine("{0,14} 밀리세컨드", span.Milliseconds);

            Console.WriteLine("또는");
            Console.WriteLine("{0,14} 일", span.TotalDays);
            Console.WriteLine("{0,14} 시간", span.TotalHours);
            Console.WriteLine("{0,14} 분", span.TotalMinutes);
            Console.WriteLine("{0,14} 초", span.TotalSeconds);
            Console.WriteLine("{0,14} 밀리세컨드", span.TotalMilliseconds);
            Console.WriteLine("{0,14} 틱", span.Ticks);


        }
    }
}

반응형