terça-feira, 27 de julho de 2010

[java] convertBigDecimalToStringDecimal

   /**
    * Converte um BigDecimal para uma String no formato
    * decimal (valor de moeda, p. ex.). Se o
    * BigDecimal for vazio ou se ocorrer uma exceção,
    * retorna uma String vazia ("")
    *
    * @param valor
    * @param locale - pegue o Locale desejado pelo
    *       método "getLocale..." do JavaUtils
    * @param minimoCasasDecimais
    * @param maximoCasasDecimais
    * @return String
    */
   public static String convertBigDecimalToStringDecimal(BigDecimal valor, Locale locale,
            int minimoCasasDecimais, int maximoCasasDecimais) {
      String retorno = "";
      if (JavaUtils.isBigDecimalNaoVazio(valor)) {
         try {
            NumberFormat formato = DecimalFormat.getNumberInstance(locale);
            formato.setMinimumFractionDigits(minimoCasasDecimais);
            formato.setMaximumFractionDigits(maximoCasasDecimais);
            retorno = formato.format(valor);
         } catch (Throwable e) {
            log.warn("JavaUtils.convertBigDecimalToStringDecimal() - Erro de " +
                     "conversao. Vai retornar \"\". Error: " + e);
         }
      }
      return retorno;
   }

Nenhum comentário: