|
[숫자를 시간으로]
간단한 방법은
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TDateTime dt;
dt.Val = 46883.443;
ShowMessage(dt.FormatString("yyyy-mm-dd hh:nn:ss"));
}
[시간또는 시간String을 숫자로]
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ShowMessage(Now().Val); //현재시간
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
TDateTime dt=StrToDateTime("2007-07-02"); //2007년 7월 2일 0시 0분 0초
ShowMessage(dt.Val);
}
//---------------------------------------------------------------------------
뒤에서 두값이 ...
Now().Val ==> 현재시간의 utc value
TDateTime dt=StrToDateTime("2007-07-02");
dt.Val ==> 2007년 7월 2일 0시 0분 0초 를 나타냅니다.
위 시간값을 UTC로 변경하려면
시스템 시간이 서울인경우 " 표준시간대 + 9 시간 " 이므로
9시간을 빼주면 되겠죠
val = val - 9/24.0; //하루가 1이니까 9시간은 9 / 24 이거든요
그러면 utc로 변경되겠네요
님께서 원하시는것이 utc를 원하는것 같지는 않고
시간을 숫자로 변환하고 숫자를 시간으로 변환하는 방법을 찾는것 같네요
원하시는 답변이 되었는지 모르겠네요
그럼...
초보자 님이 쓰신 글 :
: UTC Time시간을 Local 시간으로 변환하는것은 쉽게 검색을 했는데 그 반대로
: UTC Time시간으로 변환하는 방법은 못 찾겠네요.
:
: UTC Time시간으로 변환해서 아래와 같이 송신을 하려고 하는데 계산식[또는 함수]을 못찾겠어요.
: 46 88 49 58 [UTC Time시간으로 변환 Data - Type = BYTE]
: [46 : 년도, 88 : 월, 49 : 일, 58 :요일]
:
: 위에 Data를 Local 시간으로 변환하면
:
: DWORD dwDate;
: dwDate = MAKELONG ( MAKEWORD(by[3], by[2]), MAKEWORD(by[1], by[0]) );
: struct tm *systime;
: time_t t;
: t = dwDate;
: systime = localtime(&t);
: int year = systime->tm_year+1900;
: int mon = systime->tm_mon+1;
: int day = systime->tm_mday;
: int wee = systime->tm_wday;
: 로 하면 2007년 7월 2일 (wee = 1 = 월요일)로 표시를 하는데
:
: 반대로 2007년 7월 2일 (wee = 1 = 월요일)을 UTC Time 형태로 변환하는 방법을 모르겠습니다.
:
: 아시는분 꼭 부탁드립니다.
|