第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Apache POI,強(qiáng)制貨幣格式有兩個(gè)小數(shù)點(diǎn)

Apache POI,強(qiáng)制貨幣格式有兩個(gè)小數(shù)點(diǎn)

qq_笑_17 2021-08-19 17:28:20
我嘗試強(qiáng)制 Apache POI 生成兩位數(shù)的貨幣格式。我設(shè)法生成樣式格式:cellStyle.setDataFormat(wb.createDataFormat().getFormat("$#,##0.00"))但是,一旦在 Excel 中執(zhí)行,我收到以下錯(cuò)誤,我想擺脫它:錯(cuò)誤:some number formats may have been lost,數(shù)字似乎有 2 個(gè)小數(shù)點(diǎn)到 5 個(gè)小數(shù)點(diǎn)。我試圖找到 apache POI 格式的傳說(shuō),但沒(méi)有成功。
查看完整描述

1 回答

?
一只名叫tom的貓

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊

將評(píng)論轉(zhuǎn)換為答案。保留評(píng)論,因?yàn)樗鼈兛赡芨菀赘M(jìn)

首先,貨幣應(yīng)使用以下格式

_($* #,##0.00_);_($* (#,##0.00);_($* \"-\"??_);_(@_)

(此格式直接來(lái)自 excel,因此其工作 100%)。

現(xiàn)在我們有了格式,讓我們來(lái)看看遇到的貨幣問(wèn)題。以下代碼顯示了所有貨幣及其符號(hào)/符號(hào):

for (Currency c : Currency.getAvailableCurrencies()) {
    System.out.println(c.getCurrencyCode() + " : " + c.getSymbol());}

從中我們可以看出,它只有USD一個(gè)“真實(shí)”符號(hào),而該類(lèi)中的所有其他貨幣都只有它們的貨幣代碼作為符號(hào)。這似乎是這里的實(shí)際問(wèn)題。使用此代碼:

String format = "_(<ccy>* #,##0.00_);_(<ccy>* (#,##0.00);_(<ccy>* \\\"-\\\"??_);_(@_)";
style.setDataFormat(wb.createDataFormat().getFormat(format.replace("<ccy>", "€")));

我們可以看到,它確實(shí)適用于實(shí)際符號(hào),但如果符號(hào)被其貨幣代碼替換,則會(huì)失敗。這導(dǎo)致OP檢查excel,他發(fā)現(xiàn)excel本身提供了一種貨幣格式BGN,但畢竟apache-poi不是excel。

只要提供了正確的符號(hào),此提供的格式將適用于大多數(shù)貨幣。我檢查了這個(gè)網(wǎng)站上的幾種貨幣符號(hào),發(fā)現(xiàn)并非所有貨幣符號(hào)都受支持。Дин.而工程CHFRD$都失敗。這在未來(lái)可能會(huì)改變。


請(qǐng)注意,我使用apache-poi 3.15. 這可能已經(jīng)在 3.17 中更好用了


查看完整回答
反對(duì) 回復(fù) 2021-08-19
  • 1 回答
  • 0 關(guān)注
  • 284 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)