从golang中的xls文件中读取数字类型单元格

时间:2016-04-27 15:03:22

标签: go ubuntu-14.04 xls

坚持从Go程序中的xls文件中获取数字类型(格式)单元格值。该文件中包含名称(文本),Due_amount(数字)列。 我正在使用github.com/extrame/xls包。

我的代码是:

if sheet1 := xlFile.GetSheet(0); sheet1 != nil {
    col1 := sheet1.Rows[0].Cols[0]
    col2 := sheet1.Rows[0].Cols[0]
    for i := 0; i <= (int(sheet1.MaxRow)); i++ {
        row1 := sheet1.Rows[uint16(i)]
        col1 = row1.Cols[0]
        col2 = row1.Cols[1]
        fmt.Print("\n", col1.String(xlFile), ",", col2.String(xlFile))
        }
    }
}

col2.String(xlFile)给出错误的值,因为第2列有数字类型条目。

我的xls文件内容是:

COL1  |  COL2
ADAM  |  69057
JHON  |  4926
BILL  |  22792

在此上运行我的程序会产生如下值:

[ADAM],[2089.01]
[JHON],[1913.06]
[BILL],[1962.05]

我怎样才能获得数字值?   有人可以告诉我如何克服这个问题吗?

1 个答案:

答案 0 :(得分:0)

我相信excel如果是数字的话,会以不同的方式处理单元格值。

文档稀疏,但可能尝试将值转换为*NumberCol,如下所示:

row1.Cols[1].(*xls.NumberCol)