已验证 提交 b4ffa8ce 编写于 作者: xurime's avatar xurime

- Add unsigned integer data type support, related issue #136;

- go test and godoc updated
Signed-off-by: xurime's avatarRi Xu <xuri.me@gmail.com>
上级 9b5b74d4
......@@ -30,6 +30,11 @@ func (f *File) mergeCellsParser(xlsx *xlsxWorksheet, axis string) string {
// int16
// int32
// int64
// uint
// uint8
// uint16
// uint32
// uint64
// float32
// float64
// string
......@@ -51,6 +56,16 @@ func (f *File) SetCellValue(sheet, axis string, value interface{}) {
f.SetCellInt(sheet, axis, int(value.(int32)))
case int64:
f.SetCellInt(sheet, axis, int(value.(int64)))
case uint:
f.SetCellInt(sheet, axis, int(value.(uint)))
case uint8:
f.SetCellInt(sheet, axis, int(value.(uint8)))
case uint16:
f.SetCellInt(sheet, axis, int(value.(uint16)))
case uint32:
f.SetCellInt(sheet, axis, int(value.(uint32)))
case uint64:
f.SetCellInt(sheet, axis, int(value.(uint64)))
case float32:
f.SetCellDefault(sheet, axis, strconv.FormatFloat(float64(value.(float32)), 'f', -1, 32))
case float64:
......
......@@ -67,16 +67,21 @@ func TestOpenFile(t *testing.T) {
xlsx.SetCellValue("Sheet2", "F1", " Hello")
xlsx.SetCellValue("Sheet2", "G1", []byte("World"))
xlsx.SetCellValue("Sheet2", "F2", 42)
xlsx.SetCellValue("Sheet2", "F2", int8(42))
xlsx.SetCellValue("Sheet2", "F2", int16(42))
xlsx.SetCellValue("Sheet2", "F2", int32(42))
xlsx.SetCellValue("Sheet2", "F2", int64(42))
xlsx.SetCellValue("Sheet2", "F2", float32(42.65418))
xlsx.SetCellValue("Sheet2", "F2", float64(-42.65418))
xlsx.SetCellValue("Sheet2", "F2", float32(42))
xlsx.SetCellValue("Sheet2", "F2", float64(42))
xlsx.SetCellValue("Sheet2", "F3", int8(1<<8/2-1))
xlsx.SetCellValue("Sheet2", "F4", int16(1<<16/2-1))
xlsx.SetCellValue("Sheet2", "F5", int32(1<<32/2-1))
xlsx.SetCellValue("Sheet2", "F6", int64(1<<32/2-1))
xlsx.SetCellValue("Sheet2", "F7", float32(42.65418))
xlsx.SetCellValue("Sheet2", "F8", float64(-42.65418))
xlsx.SetCellValue("Sheet2", "F9", float32(42))
xlsx.SetCellValue("Sheet2", "F10", float64(42))
xlsx.SetCellValue("Sheet2", "F11", uint(1<<32-1))
xlsx.SetCellValue("Sheet2", "F12", uint8(1<<8-1))
xlsx.SetCellValue("Sheet2", "F13", uint16(1<<16-1))
xlsx.SetCellValue("Sheet2", "F14", uint32(1<<32-1))
xlsx.SetCellValue("Sheet2", "F15", uint64(1<<32-1))
xlsx.SetCellValue("Sheet2", "F16", true)
xlsx.SetCellValue("Sheet2", "G2", nil)
xlsx.SetCellValue("Sheet2", "G3", uint8(8))
xlsx.SetCellValue("Sheet2", "G4", time.Now())
// Test completion column.
xlsx.SetCellValue("Sheet2", "M2", nil)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册