Golang net/mail.Header type, Date(), Get() and AddressList() functions example

package net/mail

Golang net/mail.Header type, Date(), Get() and AddressList() functions usage example

 package main

 import (
  "fmt"
  "net/mail"
 )

 var header = mail.Header{
  "From": []string{"Adam <adam@earth.net>"},
  "To": []string{"Eve <eve@earth.net>"},
  "Subject": []string{"I don't want to eat the apple.."},
  "Date": []string{"Fri, 21 Nov 0000 09:55:06 -0600"},
  "Message-Id": []string{"<9999@tree.earth.net>"},
 }

 func main() {

  key := "From"

  address, err := header.AddressList(key)

  if err != nil {
 panic(err)
  }

  fmt.Println(address[0].String())

  // --------------

  key = "To"

  addresses, err := header.AddressList(key)

  if err != nil {
 panic(err)
  }

  fmt.Println(addresses[0].String())

  // --------------

  dateTime, err := header.Date()

  if err != nil {
 panic(err)
  }

  fmt.Println(dateTime.String())

  // --------------

  getSubject := header.Get("Subject")

  fmt.Println(getSubject)
 }

Output :

"Adam" adam@earth.net

"Eve" eve@earth.net

0000-11-21 09:55:06 -0600 -0600

I don't want to eat the apple..

References :

http://golang.org/pkg/net/mail/#Header

http://golang.org/pkg/net/mail/#Header.AddressList

http://golang.org/pkg/net/mail/#Header.Date

http://golang.org/pkg/net/mail/#Header.Get

Advertisement