diff options
author | foxmeder <foxmeder@gmail.com> | 2020-04-01 15:38:37 +0800 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2020-04-02 00:49:09 +0800 |
commit | 59f6af21a378fdde21422a92b79a7b03bba313d4 (patch) | |
tree | cef83a03404321062245033ea28bdf4996664448 | |
parent | 736362694adff47424726a4e4e2569f8247e7fcf (diff) |
fix reading wrong string from xml such as below
<sheetData><row r="1"><c r="A1" s="1" t="s"><v>0</v></c><c r="B1" s="1" t="s"></c></row></sheetData>
-rw-r--r-- | rows.go | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -301,10 +301,12 @@ func (f *File) sharedStringsReader() *xlsxSST { func (xlsx *xlsxC) getValueFrom(f *File, d *xlsxSST) (string, error) { switch xlsx.T { case "s": - xlsxSI := 0 - xlsxSI, _ = strconv.Atoi(xlsx.V) - if len(d.SI) > xlsxSI { - return f.formattedValue(xlsx.S, d.SI[xlsxSI].String()), nil + if xlsx.V != "" { + xlsxSI := 0 + xlsxSI, _ = strconv.Atoi(xlsx.V) + if len(d.SI) > xlsxSI { + return f.formattedValue(xlsx.S, d.SI[xlsxSI].String()), nil + } } return f.formattedValue(xlsx.S, xlsx.V), nil case "str": |