所以我試圖更新谷歌表格電子表格中的值,并且由于某種原因,當(dāng)我使用該spreadsheets.values.update方法時(shí),我嘗試填寫的值被四舍五入。例子sheet = service.spreadsheets()value = [[myfunction(), 10, 123]]body = {'values': value}result = sheet.values().update(spreadsheetId=SPREADSHEET_ID, range=RANGE_NAME, valueInputOption='RAW', body=body).execute()其中myfunction()返回一個(gè)整數(shù)。例如,使用的整數(shù)為1212650293435022848。該工作表確實(shí)已更新,但填寫的值是[1212650293435023000, 10, 123]代替[1212650293435022848, 10, 123]這是我的代碼的問題還是 API 本身的問題?
3 回答

茅侃侃
TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超21個(gè)贊
注意事項(xiàng)
Google 電子表格目前不支持大整數(shù)。這是其數(shù)字格式的限制。
可能的解決方法
您可以使用 Apps 腳本自定義函數(shù)來處理字符串格式的大整數(shù):
由于 Apps 腳本可與 JavaScript 配合使用,您可以使用 BigInt() 構(gòu)造函數(shù)將字符串解析為大整數(shù)。

catspeake
TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊
最后,我做到了,在將整數(shù)發(fā)送到電子表格之前將其轉(zhuǎn)換為字符串。這樣就沒有損失,而且我不必使用 BigInt()。

達(dá)令說
TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊
BigInt 還會(huì)將 6836735342561722374 等數(shù)字修改為 6836735342561722368。
添加回答
舉報(bào)
0/150
提交
取消