Explorar o código

Bugfix: create worksheet cause file issue. Relate issue #249.

xuri %!s(int64=7) %!d(string=hai) anos
pai
achega
a3571ee39b
Modificáronse 3 ficheiros con 10 adicións e 6 borrados
  1. 1 1
      comment.go
  2. 0 4
      excelize_test.go
  3. 9 1
      sheet.go

+ 1 - 1
comment.go

@@ -15,7 +15,7 @@ func parseFormatCommentsSet(formatSet string) (*formatComment, error) {
 		Author: "Author:",
 		Text:   " ",
 	}
-	err := json.Unmarshal(parseFormatSet(formatSet), &format)
+	err := json.Unmarshal([]byte(formatSet), &format)
 	return &format, err
 }
 

+ 0 - 4
excelize_test.go

@@ -771,10 +771,6 @@ func TestAddTable(t *testing.T) {
 	if err != nil {
 		t.Error(err)
 	}
-	err = xlsx.AddTable("Sheet2", "A2", "B5", ``)
-	if err != nil {
-		t.Log(err)
-	}
 	err = xlsx.AddTable("Sheet2", "A2", "B5", `{"table_name":"table","table_style":"TableStyleMedium2", "show_first_column":true,"show_last_column":true,"show_row_stripes":false,"show_column_stripes":true}`)
 	if err != nil {
 		t.Error(err)

+ 9 - 1
sheet.go

@@ -132,9 +132,17 @@ func (f *File) setSheet(index int, name string) {
 // allowed in sheet title.
 func (f *File) setWorkbook(name string, rid int) {
 	content := f.workbookReader()
+	rID := 0
+	for _, v := range content.Sheets.Sheet {
+		t, _ := strconv.Atoi(v.SheetID)
+		if t > rID {
+			rID = t
+		}
+	}
+	rID++
 	content.Sheets.Sheet = append(content.Sheets.Sheet, xlsxSheet{
 		Name:    trimSheetName(name),
-		SheetID: strconv.Itoa(rid),
+		SheetID: strconv.Itoa(rID),
 		ID:      "rId" + strconv.Itoa(rid),
 	})
 }