diff options
author | Ri Xu <xuri.me@gmail.com> | 2016-09-07 20:09:02 +0800 |
---|---|---|
committer | Ri Xu <xuri.me@gmail.com> | 2016-09-07 20:09:02 +0800 |
commit | 0dd0fba96b8a33eb5fd365131bfc4a2361a9fe3f (patch) | |
tree | d55489640f7643bd6026e223a996f347d250652b /lib.go | |
parent | df8f85d6abdebba567766484705134f30bf5f847 (diff) |
Move execute checkRow logic when XLSX file open, speed up library write file.
Diffstat (limited to 'lib.go')
-rw-r--r-- | lib.go | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -3,6 +3,7 @@ package excelize import ( "archive/zip" "bytes" + "encoding/xml" "io" "log" "math" @@ -28,6 +29,11 @@ func ReadZipReader(r *zip.Reader) (map[string]string, int, error) { fileList[v.Name] = readFile(v) if len(v.Name) > 18 { if v.Name[0:19] == "xl/worksheets/sheet" { + var xlsx xlsxWorksheet + xml.Unmarshal([]byte(strings.Replace(fileList[v.Name], "<drawing r:id=", "<drawing rid=", -1)), &xlsx) + xlsx = checkRow(xlsx) + output, _ := xml.Marshal(xlsx) + fileList[v.Name] = replaceRelationshipsID(replaceWorkSheetsRelationshipsNameSpace(string(output))) worksheets++ } } |