2011-09-27 23 views
5

我使用Java格式化一些貨幣。這片輸出9,99€比利時荷蘭人正確的貨幣格式是什麼?

final NumberFormat nf = NumberFormat.getCurrencyInstance(new Locale("nl", "BE")); 
    nf.setCurrency(EUR); 
    nf.format(new BigDecimal("9.99")); 

但我們的付款服務供應商之一,它返回相當於預先格式化,輸出€9,99

這對於nl-BE是正確的?

而更多的編程有關,如果原來的支付服務提供商,而不是Java的,是正確的,我怎麼修復Java的方式,而不每個區域黑客(在真實的代碼荷蘭比利時語言環境不硬編碼)

+2

比利時......沒有人互相認同。對於這顯然也沒有。 – BalusC

+0

是的。請在法​​語方面瞭解它是如何完成的,併爲荷蘭語方面做相反的事情:-) - PS:這是來自住在法國的講法語的比利時人 –

回答

4

如果Wikipedia is to be believed,也不是不正確的:

在比利時荷蘭語,歐元符號可以前或後量走, 後者更常見。

+0

謝謝,雖然我剛發現我的問題是更大的http://stackoverflow.com/questions/7571164/format-currency-in-a-language-regardless-of-country –

+1

如今維基百科說:「在荷蘭語版本中,歐元符號(€)主要放在金額,從中經常被一個(薄的)空間隔開「...... – eis

1

簡答:沒人關心。你可以使用任何人。

稍微長一些的答案:如果金額出現在一個句子中,通常9,99歐元。如果它在發票的底部,則兩者均被使用。沒有等待,你甚至可以使用歐元而不是歐元。

順便說一下,大多數人甚至期望9.99€,而不是9,99€,因爲locale data was invented 25 years late

要知道,雖然這是一個fr-BE傢伙;-)

認爲這是什麼樣的東西,我相信現場信息試圖太多區分相鄰的文化。想想鍵盤:fr-FRfr-BE有一個佈局。字母,數字和標點符號大多數跡象都在同一位置,但幾個字符,如<>@是在鍵盤上的不同位置。 WTF!