首頁 > 後端開發 > Golang > 在使用 time.Time 的類型之間進行轉換

在使用 time.Time 的類型之間進行轉換

PHPz
發布: 2024-02-08 22:54:08
轉載
533 人瀏覽過

在使用 time.Time 的类型之间进行转换

在使用time.Time類型之間進行轉換是在Go語言程式設計中常見的操作。 time.Time類型是Go語言中處理時間的標準函式庫,能夠表示日期和時間的具體值。在實際開發中,我們經常需要將time.Time類型轉換為字串或將字串轉換為time.Time類型。這個過程可能涉及時區的處理、時間格式的轉換等。在本文中,我們將介紹如何在Go語言中進行time.Time類型的轉換,以及一些常見的注意事項。無論是Go語言初學者或是有一定經驗的開發者,都可以從中受益。

問題內容

我正在嘗試建立從 Jira 到 GitLab 的遷移腳本。我正在使用的 Jira API 庫使用以下類型從 Jira 讀取問題創建時間:

// Time represents the Time definition of JIRA as a time.Time of go
type Time time.Time
登入後複製

GitLab API 用戶端允許使用 *time.Time 類型的欄位建立具有建立時間的問題。

type CreateIssueOptions struct {
    CreatedAt                          *time.Time `url:"created_at,omitempty" json:"created_at,omitempty"`
    DueDate                            *ISOTime   `url:"due_date,omitempty" json:"due_date,omitempty"`
    // ...
}
登入後複製

如何從 Jira 時間轉換為 GitLab 時間?我一直在嘗試不同的選項,但無法理解它應該如何運作。

解決方法

如果您有 Jira 結構:

type SomeStruct struct {
   ...
   T Time
}
登入後複製

然後你可以簡單地這樣做:

tm:=time.Time(someStruct.T)
if !tm.IsZero() {
   createIssue.CreatedAt=&tm
}
登入後複製

以上是在使用 time.Time 的類型之間進行轉換的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板