What is epoch time?
The Unix epoch (or Unix time or POSIX time or Unix timestamp) is the number of seconds that have elapsed since January 1, 1970 (midnight UTC/GMT), not counting leap seconds (in ISO 8601: 1970-01-01T00:00:00Z). Literally speaking the epoch is Unix time 0 (midnight 1/1/1970), but 'epoch' is often used as a synonym for 'Unix time'. Many Unix systems store epoch dates as a signed 32-bit integer, which might cause problems on January 19, 2038 (known as the Year 2038 problem or Y2038).
Human readable time | Seconds |
1 hour | 3600 seconds |
1 day | 86400 seconds |
1 week | 604800 seconds |
1 month (30.44 days) | 2629743 seconds |
1 year (365.24 days) | 31556926 seconds |
How to get the current epoch time in ...
PHP | time() |
Python | import time first, then time.time() |
Ruby | Time.now (or Time.new ). To display the epoch: Time.now.to_i |
Perl | time |
Java | long epoch = System.currentTimeMillis()/1000; |
C# | var epoch = (DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; |
Objective-C | [[NSDate date] timeIntervalSince1970]; (returns double) or NSString *currentTimestamp = [NSString stringWithFormat:@"%f", [[NSDate date] timeIntervalSince1970]]; |
C++11 | double now = std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count(); |
VBScript/ASP | DateDiff("s", "01/01/1970 00:00:00", Now()) |
AutoIT | _DateDiff('s', "1970/01/01 00:00:00", _NowCalc()) |
Delphi | Epoch := DateTimetoUnix(Now); Tested in Delphi 2010. |
R | as.numeric(Sys.time()) |
Erlang | calendar:datetime_to_gregorian_seconds(calendar:universal_time())-719528*24*3600. |
MySQL | SELECT unix_timestamp(now()) |
PostgreSQL | SELECT extract(epoch FROM now()); |
SQLite | SELECT strftime('%s', 'now'); |
Oracle PL/SQL | SELECT (SYSDATE - TO_DATE('01/01/1970 00:00:00', 'MM-DD-YYYY HH24:MI:SS')) * |
SQL Server | SELECT DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE()) |
JavaScript | Math.round(new Date().getTime()/1000.0) getTime() returns time in milliseconds. |
Visual FoxPro | DATETIME() - {^1970/01/01 00:00:00} Warning: time zones not handled correctly |
Adobe ColdFusion | <cfset epochTime = left(getTickcount(), 10)> |
Tcl/Tk | clock seconds |
Unix/Linux Shell | date +%s |
PowerShell | get-date (get-date).touniversaltime() -uformat "%s" |
Other OS's | Command line: perl -e "print time" (If Perl is installed on your system) |
Convert from human readable date to epoch
PHP | strtotime("15 November 2012") (converts most English date texts) or:date_create('01/15/2010')->format('U') (PHP5 DateTime class) |
Python | import time first, then int(time.mktime(time.strptime('2000-01-01 12:34:00', '%Y-%m-%d %H:%M:%S'))) - time.timezone |
Ruby | Time.local(year, month, day, hour, minute, second, usec ) (or Time.gm for GMT/UTC input). To display add .to_i |
Perl | Use the Perl Epoch routines |
Java | long epoch = new java.text.SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/1970 01:00:00").getTime() / 1000; |
VBScript/ASP | DateDiff("s", "01/01/1970 00:00:00", time field) |
AutoIT | _DateDiff('s', "1970/01/01 00:00:00", "YYYY/MM/DD HH:MM:SS") |
Delphi | Epoch := DateTimeToUnix(StrToDateTime(myString)); |
C | Use the C Epoch Converter routines |
R | as.numeric(as.POSIXct("MM/dd/yyyy HH:mm:ss", origin="1970-01-01")) |
MySQL | SELECT unix_timestamp(time) Time format: YYYY-MM-DD HH:MM:SS or YYMMDD or YYYYMMDDMore on using Epoch timestamps with MySQL |
PostgreSQL | SELECT extract(epoch FROM date('2000-01-01 12:34')); With timestamp: SELECT EXTRACT(EPOCH FROM TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40-08'); With interval: SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours'); |
SQLite | SELECT strftime('%s',timestring); |
SQL Server | SELECT DATEDIFF(s, '1970-01-01 00:00:00', time field) |
JavaScript | Use the JavaScript Date object |
Unix/Linux Shell | date +%s -d"Jan 1, 1980 00:00:01" Replace '-d' with '-ud' to input in GMT/UTC time. |
Convert from epoch to human readable date
PHP | date(output format, epoch); Output format example: 'r' = RFC 2822 date |
Python | import time first, then time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.localtime(epoch)) Replace time.localtime with time.gmtime for GMT time. |
Ruby | Time.at(epoch) |
Perl | Use the Perl Epoch routines |
Java | String date = new java.text.SimpleDateFormat("MM/dd/yyyy HH:mm:ss").format(new java.util.Date (epoch*1000)); |
VBScript/ASP | DateAdd("s", epoch, "01/01/1970 00:00:00") |
AutoIT | _DateAdd("s", $EpochSeconds , "1970/01/01 00:00:00") |
Delphi | myString := DateTimeToStr(UnixToDateTime(Epoch)); Where Epoch is a signed integer. |
C | Use the C Epoch Converter routines |
Objective-C | NSDate * myDate = [NSDate dateWithTimeIntervalSince1970:epoch]; NSLog(@"%@", date); |
R | as.POSIXct(epoch, origin="1970-01-01", tz="GMT") |
MySQL | FROM_UNIXTIME(epoch, optional output format) Default output format is YYY-MM-DD HH:MM:SS. If you need support for negative timestamps: DATE_FORMAT(DATE_ADD(FROM_UNIXTIME(0), interval -315619200 second),"%Y-%m-%d")
(replace -315619200 with epoch) |
PostgreSQL | PostgreSQL version 8.1 and higher: SELECT to_timestamp(epoch); Older versions: SELECT TIMESTAMP WITH TIME ZONE 'epoch' + epoch * INTERVAL '1 second'; |
SQLite | SELECT datetime(epoch_to_convert, 'unixepoch'); or local timezone: SELECT datetime(epoch_to_convert, 'unixepoch', 'localtime'); |
Oracle PL/SQL | SELECT to_date('01-JAN-1970','dd-mon-yyyy')+(1326357743/60/60/24) from dual Replace 1326357743 with epoch. |
SQL Server | DATEADD(s, epoch, '1970-01-01 00:00:00') |
Microsoft Excel | =(A1 / 86400) + 25569 Format the result cell for date/time, the result will be in GMT time (A1 is the cell with the epoch number). For other time zones: =((A1 +/- time zone adjustment) / 86400) + 25569. |
Crystal Reports | DateAdd("s", {EpochTimeStampField}-14400, #1/1/1970 00:00:00#) -14400 used for Eastern Standard Time. See Time Zones. |
JavaScript | Use the JavaScript Date object |
Tcl/Tk | clock format 1325376000 |
Unix/Linux Shell | date -d @1190000000 Replace 1190000000 with your epoch, needs recent version of 'date'. Replace '-d' with '-ud' for GMT/UTC time. |
PowerShell | Function get-epochDate ($epochDate) { [timezone]::CurrentTimeZone.ToLocalTime(([datetime]'1/1/1970').AddSeconds($epochDate)) } , then use: get-epochDate 1279152364 . Works for Windows PowerShell v1 and v2 |
Other OS's | Command line: perl -e "print scalar(localtime(epoch))" (If Perl is installed) Replace 'localtime' with 'gmtime' for GMT/UTC time. |
상기 내용은 여기에... http://www.epochconverter.com/ 웹 페이지에서 epoch 값 과 date 를 바로 converting 할 수 있다.
728x90
'Carpe Programming > java' 카테고리의 다른 글
MultipartFile in DTO 파일 업로드 (0) | 2023.02.06 |
---|---|
[Date] 특정 날짜의 요일 구하기. (0) | 2013.03.21 |
[txt 파일 수정] 특정 문자가 포함된 열삭제 (0) | 2013.02.26 |
[파일 존재 여부 체크] URLConnection (0) | 2013.02.20 |
동일 서버에 있는 파일 다른 이름으로 복사 (0) | 2012.12.12 |