Closed hasanAjsf closed 2 years ago
I wrote the below that created vcard, but once I tried to read the vcard back to its string I failed:
package main import ( "io" "log" "strings" "github.com/emersion/go-vcard" ) func main() { var content strings.Builder content.WriteString("BEGIN:VCARD\n") content.WriteString("VERSION:3.0\n") content.WriteString("FN:Hasan Yousef\n") content.WriteString("TEL:999\n") content.WriteString("Fitem1.TEL;waid=966000000000\n") content.WriteString("item1.X-ABLabel:Mobile\n") content.WriteString("END:VCARD") r := strings.NewReader(content.String()) dec := vcard.NewDecoder(r) var card vcard.Card var err error for { card, err = dec.Decode() if err == io.EOF { break } else if err != nil { log.Fatal(err) } log.Println(card.PreferredValue(vcard.FieldFormattedName)) log.Println(card.PreferredValue(vcard.FieldTelephone)) } var enc vcard.Encoder // enc = vcard.NewEncoder(destFile) err = enc.Encode(card) if err != nil { log.Fatal(err) } // How can I convert enc to string! log.Println(&enc) }
I got:
2022/05/07 12:44:47 Hasan Yousef 2022/05/07 12:44:47 999 panic: runtime error: invalid memory address or nil pointer dereference [signal 0xc0000005 code=0x0 addr=0x18 pc=0x10549d] goroutine 1 [running]: io.WriteString({0x0, 0x0}, {0x15c770, 0xd}) D:/Development/go/src/io/io.go:314 +0x7d github.com/emersion/go-vcard.(*Encoder).Encode(0xc00004a360, 0x3?) D:/Development/gopath/pkg/mod/github.com/emersion/go-vcard@v0.0.0-20210521075357-3445b9171995/encoder.go:23 +0x57 main.main() D:/Desktop/main.go:41 +0x77e exit status 2
GitHub issues aren't for questions, sorry.
I wrote the below that created vcard, but once I tried to read the vcard back to its string I failed:
I got: