날짜 계산 라이브러리.

Gregorial을 사용한다.



월의 마지막 날

#include <iostream>

#include <boost/date_time/gregorian/gregorian.hpp>


int main()

{

    using namespace boost::gregorian;

  

    const int day = gregorian_calendar::end_of_month_day(2011, 2);

    std::cout << day << std::endl;

}

출처: https://sites.google.com/site/boostjp/tips/date_time



날짜 더하기/빼기

년의 가감산에는 years 타입,  월의 가감산에는 months 타입, 날의 가감산에는 days 타입을 사용한다.

#include <iostream>

#include <boost/date_time/gregorian/gregorian.hpp>


using namespace boost::gregorian;


int main()

{

    const date d1(2011, Apr, 1);

    const date d2 = d1 + months(1) - days(1);


    std::cout << to_simple_string(d2) << std::endl;

}

출처: https://sites.google.com/site/boostjp/tips/date_time



UTL <-> LOCAL

#include <iostream>


#include <boost/date_time.hpp>

#include <boost/date_time/c_local_time_adjustor.hpp>

#include <boost/date_time/local_time_adjustor.hpp>


int main(const int argc, const char * const argv[]) 

{

using namespace boost;


posix_time::ptime now = posix_time::second_clock::universal_time();


// utc to local 1

date_time::c_local_adjustor<posix_time::ptime> adj1;

posix_time::ptime t1 = adj1.utc_to_local(now);


// utc to local 2

date_time::local_adjustor<posix_time::ptime, 9, posix_time::no_dst> adj2;

posix_time::ptime t2 = adj2.utc_to_local(now);


// local to utc

posix_time::ptime t3 = adj2.local_to_utc(t2);


// out

std::cout << now << std::endl;

std::cout << t1 << std::endl;

std::cout << t2 << std::endl;

std::cout << t3 << std::endl;


return 0;

}



저작자 표시
신고
by 흥배 2014.05.27 08:00

C#에서 String 형식으로 넘어온 날짜와 시간 데이터를 Datetime 형식으로 형변환 하기

1
2
3
4
 
string sDate = “20100127″; string sTime = “16:19″;
// -> DateTime _sdt = DateTime.ParseExact(sDate + ” ” + sTime, “yyyyMMdd H:mm”, null);
1
2
string date_string = "201308011121"; // 2013.08.01 11:21
DateTime date = DateTime.ParseExact(date_string, "yyyyMMddHHmm", null);



두 날짜 사이의 시간 간격 구하기

1
2
3
4
5
 
TimeSpan tDiff = _edt.Subtract(_sdt);
if (tDiff.TotalHours > 1)
   Console.Write(”두 날짜 사이의 시간 간격이 1시간을 넘어 갑니다.”);



특정일에서 특정일 더하거나 빼거나 해서 날짜 구하는 법

1
2
3
4
5
6
7
 
// 오늘을 기준으로
// 30일 더하는 방법 :   
DateTime.Today.AddDays(30).ToString("yyyyMMdd");
//30일 빼는 방법 :
DateTime.Today.AddDays(-30).ToString("yyyyMMdd");



시간 포맷

1
2
// 20130530094611 ( 2013년 5월30일 오전 9시 46분 11초)
string reqData = DateTime.Now.ToString("yyyyMMddHHmss");

다른 포맷은 여기 참조 http://wizcody.egloos.com/2471287



현재까지의 tick 시간

  • DateTime.Now.Ticks


저작자 표시
신고
by 흥배 2013.09.26 08:00
| 1 |

티스토리 툴바