Notice
                              
                          
                        
                          
                          
                            Recent Posts
                            
                        
                          
                          
                            Recent Comments
                            
                        
                          
                          
                            Link
                            
                        
                    | 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
                            Tags
                            
                        
                          
                          - C
 - JavaScript
 - range
 - windows
 - Linux
 - Callback
 - FOR
 - bitcoin
 - go
 - json
 - c++
 - write
 - API
 - tcp
 - install
 - channel
 - http
 - Golang
 - go언어
 - mutex
 - 리뷰
 - GO 언어
 - package
 - File
 - window
 - Sync
 - Python
 - 영화
 - 책
 - Close
 
                            Archives
                            
                        
                          
                          - Today
 
- Total
 
Code Habit
Golang ) package time 본문
time 패키지는 현재 시간을 구하거나, 일정한 시간을 측정하는 등 시간 관련 기능을 다룰 때 사용한다.
- 현재 시간 구하기 & 포맷 변경
| 
 // main.go 
package main 
import ( 
    "fmt" 
    "time" 
) 
func main() { 
    // 현재 시간 
    now := time.Now() 
    fmt.Println(now) // 2020-06--19 14:45:56.1516017 +0900 KST m=+0.006982201 
    // yyyy-mm-dd hh:mm:ss 형식으로 포맷 
    custom := now.Format("2006-01-02 15:04:05") 
    fmt.Println(custom) // 2020-06-19 14:45:56 
    custom = now.Format("2006-01-02") 
    fmt.Println(custom) // 2020-06-19 
    // x 
    custom = now.Format("yyyy-mm-dd") 
    fmt.Println(custom) // yyyy-mm-dd 
} 
 | 
Format() 함수를 통해 흔히 사용하는 'yyyy-mm-dd' 포맷으로 변경할 때 "yyyy-mm-dd"가 아닌 "2006-01-02"를 인자로 넘겨줘야 한다.(다른 날짜를 넘기면 원하는 결과가 출력되지 않는다.)
- 시간 가(감)산하기
| 
 // main.go 
package main 
import ( 
    "fmt" 
    "time" 
) 
func main() { 
    // 현재 시간 
    var now = time.Now() 
    // 시간 감산하기 
    var date = now.AddDate(-1, 0, 0) 
    fmt.Println(date) // 2019-06-19 14:55:58.985889 +0900 KST : 1년 전 
    date = now.AddDate(0, -1, 0) 
    fmt.Println(date) // 2020-05-19 14:55:58.985889 +0900 KST : 1달 전 
    date = now.AddDate(0, 0, -1) 
    fmt.Println(date) // 2020-06-18 14:55:58.985889 +0900 KST : 1일 전 
    // 년, 월, 일 구하기 
    var from = fmt.Sprintf("%d-%d-%d 00:00:00", date.Year(), date.Month(), date.Day()) 
    var to = fmt.Sprintf("%d-%d-%d 23:59:59", date.Year(), date.Month(), date.Day()) 
    fmt.Println(from) // 2020-6-18 00:00:00 
    fmt.Println(to)   // 2020-6-18 23:59:59 
    return 
} 
 | 
AddDate() 함수를 통해 시간을 가(감)산할 수 있다. 시간 정보를 따로따로 구분해서 가져오려면 Year(), Hour()등의 함수를 사용하면 된다.