C# timestamp/DateTime에서 현재시간을 기준으로 경과시간을 취득

C# timestamp/DateTime에서 현재시간을 기준으로 경과시간을 취득

DateTime에서 경과시간을 취득

public static string GetLapsedTimeFromDateTime(DateTime dt)
{
    string timeString = string.Empty;

    TimeSpan ts = DateTime.Now.Subtract(dt);

    int DayPeriod = Math.Abs(ts.Days);

    if (DayPeriod < 1)
    {
        int HourPeriod = Math.Abs(ts.Hours);

        if (HourPeriod < 1)
        {
            int MinutePeriod = Math.Abs(ts.Minutes);
            if (MinutePeriod < 1)
            {
                int SecondPeriod = Math.Abs(ts.Seconds);
                return SecondPeriod.ToString() + "초 전";
            }
            else
            {
                return MinutePeriod.ToString() + "분 전";
            }
        }
        else
        {
            return HourPeriod.ToString() + "시간 전";
        }
    }
    else if ((DayPeriod > 0) && (DayPeriod < 7))
    {
        return DayPeriod.ToString() + "일 전";
    }
    else if (DayPeriod == 7)
    {
        return "1주일 전";
    }
    else
    {
        return dt.ToString("yyyy년 MM월 dd일");
    }
}

timestamp에서 경과 시간을 취득

public static string GetLapsedTimeFromTimestamp(string timestamp)
{
    if (timestamp == "")
        return string.Empty;

    if (timestamp == null)
        return string.Empty;

    if (timestamp == "0")
        return string.Empty;

    string timeString = string.Empty;

    DateTime dt = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);

    dt = dt.AddSeconds(Convert.ToDouble(timestamp));

    TimeSpan ts = DateTime.Now.Subtract(dt);

    int DayPeriod = Math.Abs(ts.Days);

    if (DayPeriod < 1)
    {
        int HourPeriod = Math.Abs(ts.Hours);

        if (HourPeriod < 1)
        {
            int MinutePeriod = Math.Abs(ts.Minutes);
            if (MinutePeriod < 1)
            {
                int SecondPeriod = Math.Abs(ts.Seconds);
                return SecondPeriod.ToString() + "초 전";
            }
            else
            {
                return MinutePeriod.ToString() + "분 전";
            }
        }
        else
        {
            return HourPeriod.ToString() + "시간 전";
        }
    }
    else if ((DayPeriod > 0) && (DayPeriod < 7))
    {
        return DayPeriod.ToString() + "일 전";
    }
    else if (DayPeriod == 7)
    {
        return "1주일 전";
    }
    else
    {
        return dt.ToString("yyyy년 MM월 dd일");
    }
}

Pie's Tech Note

생계형 개발자의 메모장

comments powered by Disqus

    rss facebook twitter github youtube mail spotify instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora