2017-11-17 18 views
-2

文字列の時刻が20171023T183552です。私はこの文字列の値を解析するための形式が見つかりませんでした。この文字列の値をに変換する方法はありますか? time.Time?文字列を時間として解析します。時刻値

編集 - これは重複する質問ではありません。私は解析する方法を知っていますが、私は、時間フォーマットパッケージにリストされている以外のレイアウトを使用できるという事実に気づいていませんでした。この回答は私のダブットをクリアしました。

+0

他の質問と回答がまったく同じ問題を抱えていて、正確な時刻形式ではない正しい解決策を提示しているので、まだ重複しています。可能なすべての時間形式について新しい質問をする必要はありません。パース形式の使い方に関する簡単な情報で十分でしょう。 – Adrian

答えて

8

単純に"YYYYMMDDTHHmmSS"なので、フォーマット文字列(レイアウト):"20060102T150405"を使用してください。

例:

s := "20171023T183552" 
t, err := time.Parse("20060102T150405", s) 
fmt.Println(t, err) 

出力(Go Playground上でそれを試してみてください):time.Parse()のドキュメントから引用

2017-10-23 18:35:52 +0000 UTC <nil> 

解析は、フォーマットされた文字列を解析し、時間を返しますそれが表す値。レイアウトは、

Mon Jan 2 15:04:05 -0700 MST 2006 

と定義されている参照時間が、それが値だった場合どのように解釈されるかを示すことによってフォーマットを定義します。それは入力フォーマットの一例として役立つ。同じ解釈が入力文字列に対して行われます。

だから、基本的に、あなたの入力で利用可能で同じフォーマットを用いて基準時間をフォーマットすることにより、書式文字列を生成する。

反対方向(stringtime.Time変換)するために、Golang: convert time.Time to stringを参照。

+0

クイックレスポンスありがとうございました.. :) – Priyanka

関連する問題