2016-04-27 37 views
1

陷入從Go程序中的xls文件獲取數字類型(格式)單元格值。該文件具有名稱(文本),Due_amount(數字)列。 我正在使用github.com/extrame/xls軟件包。在golang中從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] 

我怎樣才能得到一個數值? 有人能告訴我如何克服這個問題嗎?

+0

你可以給有關的價值觀和你希望他們成爲怎樣的一些細節? –

+0

嗨matt.s請檢查我更新的問題 – Hardy

回答

0

我相信如果excel是數值,excel處理的單元格值會有所不同。

的文檔是稀疏,但也許嘗試值轉換爲*NumberCol像這樣:

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

+0

你能建議我一個更好的方式來處理xls文件嗎? (* NumberCol)說:undefined:NumberCol – Hardy

+0

@Hardy,對不起,你需要'row1.Cols [1]。(* xls.NumberCol)' ;上面編輯 –