user3125693
user3125693

Reputation: 950

Golang excel file reading

I'm using tealeg xlsx library to read an excel file https://github.com/tealeg/xlsx . They have documentation here https://godoc.org/github.com/tealeg/ . It works perfectly fine if I call the OpenFile() by local directory, but I wanted to use an http.Request.FormFile() return object which is of type multipart.Form. How do I use this file to be read by the tealeg package?

Tealeg's OpenReaderAt() looks like something I should use, but the multipart. Form object returned from http.Request.FormFile() returns a file interface but I'm not sure how to access the readerAt object? https://golang.org/pkg/mime/multipart/#File

Upvotes: 2

Views: 7856

Answers (1)

John S Perayil
John S Perayil

Reputation: 6345

func OpenReaderAt(r io.ReaderAt, size int64) (*File, error)

xlsx.OpenReaderAt takes in an io.ReaderAt interface and multipart.File also implements io.ReaderAt.

So you can directly pass it to xlsx.OpenReaderAt

var (
file multipart.File
size int64
err error
)

file, _,err = req.FormFile("key")
// size = // Calculate size
xlsx.OpenReaderAt(file,size)

Upvotes: 4

Related Questions