You cannot use BTC as the currency code for bitcoins under ISO 4217: (https://en.wikipedia.org/wiki/ISO_4217#Code_formation ). Unofficially, the wiki for ISO 4217 lists XBT (https://en.wikipedia.org/wiki/ISO_4217#Without_currency_code) as a currency code for bitcoins.
Locale.Builder b = new Locale.Builder();
b.setRegion("XB");
Locale xb = b.build();
Currency bitcoin = Currency.getInstance(xb);
Your currency.properties file will look like:
XB=XBT,000,3
Note that the parsing for java.util.Currencyonly handles a minor unit of 0-3:
Pattern propertiesPattern = Pattern.compile("([A-Z]{3})\\s*,\\s*(\\d{3})\\s*,\\s*([0-3])");