drby30217 2016-10-22 00:09
浏览 836
已采纳

Golang Excel文件读取

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

  • 写回答

2条回答 默认 最新

  • douchunxian9740 2016-10-22 03:22
    关注

    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)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?