diff options
author | xuri <xuri.me@gmail.com> | 2020-07-09 01:24:11 +0800 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2020-07-09 01:24:11 +0800 |
commit | 49257c5918f3aa9f2730021a7e6a24b4835646fd (patch) | |
tree | 5b7e0b016bb008fd5680d19b59b05ab722a8d17b /lib.go | |
parent | f7bd0729c65fc82305328f7ac8fbaf329d1075c0 (diff) |
support case-sensitive doc parts to improve compatibility
Diffstat (limited to 'lib.go')
-rw-r--r-- | lib.go | 10 |
1 files changed, 9 insertions, 1 deletions
@@ -26,10 +26,18 @@ import ( // filesystem. func ReadZipReader(r *zip.Reader) (map[string][]byte, int, error) { var err error + var docPart = map[string]string{ + "[content_types].xml": "[Content_Types].xml", + "xl/sharedstrings.xml": "xl/sharedStrings.xml", + } fileList := make(map[string][]byte, len(r.File)) worksheets := 0 for _, v := range r.File { - if fileList[v.Name], err = readFile(v); err != nil { + fileName := v.Name + if partName, ok := docPart[strings.ToLower(v.Name)]; ok { + fileName = partName + } + if fileList[fileName], err = readFile(v); err != nil { return nil, 0, err } if strings.HasPrefix(v.Name, "xl/worksheets/sheet") { |