Blockchain

BTC 顯示的金額是賬戶中收到的金額的 10^8 倍

  • June 1, 2017

我與Java/Maven/JSP應用程序一起工作BitcoinJ,我從測試網水龍頭轉移了大約 0.0048 BTC。但是,收到後,我看到我的帳戶餘額為480000.00 BTC.

在此處輸入圖像描述

這是我用來獲取 Satoshi 的方法Coin

public Coin getBalance() {
       return balance;
   }

我檢查了程式碼,至少我的後端部分對我來說看起來很正常。如何解決這個問題?

顯然,該應用程序將金額顯示為 Satoshi(最小單位)而不是 BTC。對於內部計算,這是可以的,因為它避免了舍入錯誤,但對於輸入和輸出,您應該按適當的因子進行縮放(BTC 為 10^8,mBTC 為 10^5)。

是的,在 bitcoinj 中,實際上有兩個類用於為人類格式化 Coin 值:MonetaryFormat 和 BtcFormat。我強烈建議使用兩者之一。

這是一個例子:

Wallet wallet = <initialize wallet here>
String friendlyFormat = BtcFormat.getInstance().format(wallet.getBalance());

引用自:https://bitcoin.stackexchange.com/questions/53987