当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Golang time.Time.UnmarshalText()用法及代码示例


在Go语言中,时间包提供了确定和查看时间的函数。 Go语言中的UnmarshalText()函数用于实现encoding.TextUnmarshaler接口。这里的时间是带引号的字符串,格式为RFC 3339。此外,此函数在时间包下定义。在这里,您需要导入“time”包才能使用这些函数。

用法:

func (t *Time) UnmarshalText(data []byte) error

在这里,“t”是指向指定时间的指针,而“data”是表示通过MarshalText()方法生成的形式的编码的字节片。

返回值:它解码由MarshalText()方法返回的编码,并返回发生的错误,但是如果没有错误,则返回“nil”。

范例1:



// Golang program to illustrate the usage of 
// Time.UnmarshalText() function 
  
// Including main package 
package main 
  
// Importing fmt and time 
import "fmt"
import "time"
  
// Calling main 
func main() { 
  
    // Defining t for MarshalText method 
    t:= time.Date(2014, 5, 3, 13, 9, 7, 64, time.UTC) 
  
    // Calling MarshalText() method 
    encoding, _:= t.MarshalText() 
  
    // Defining tm for UnmarshalText() method 
    var tm time.Time 
  
    // Calling UnmarshalText method with its parameters 
    decode:= tm.UnmarshalText(encoding) 
  
    // Prints output 
    fmt.Printf("Error:%v\n", decode) 
}

输出:

Error:<nil>

范例2:

// Golang program to illustrate the usage of 
// Time.UnmarshalText() function 
  
// Including main package 
package main 
  
// Importing fmt and time 
import "fmt"
import "time"
  
// Calling main 
func main() { 
  
    // Defining t for MarshalText method 
    t:= time.Date(2024, 85, 93, 103, 79, 97, 1264, time.UTC) 
  
    // Calling MarshalText() method 
    encoding, _:= t.MarshalText() 
  
    // Defining tm for UnmarshalText() method 
    var tm time.Time 
  
    // Calling UnmarshalText method with its parameters 
    decode:= tm.UnmarshalText(encoding) 
  
    // Prints output 
    fmt.Printf("Error:%v\n", decode) 
}

输出:

Error:<nil>

此处,以上代码中说明的“t”的值在通常范围之外,但在转换时已标准化。




相关用法


注:本文由纯净天空筛选整理自nidhi1352singh大神的英文原创作品 time.Time.UnmarshalText() Function in Golang with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。