Вопрос

Мне нужно отформатировать десятичные цифры с шаблонами в J2Me, как Java DecimalFormat.

Я вижу вариант для порта Формат/NumberFormat/DecimalFormat.

Можете ли вы предложить готовые к использованию реализации или библиотеки?

Спасибо!

Это было полезно?

Решение

Итак, мне удается портировать настольную реализацию Java: bbnumberformat:

    String[] patterns = new String[] { "#,#00.00#", "0.0;(0.0)",
            "0.###E0" };
    DecimalFormat format = (DecimalFormat) DecimalFormat
            .getNumberInstance();
    double value = -12.321;
    for (int i = 0; i < patterns.length; i++) {
        String pattern = patterns[i];
        format.applyPattern(pattern);
        String text = "Pattern: " + pattern 
        + " Sample: "+format.format(value)+"\n";
        add(new LabelField(text));
    }

Alt Text http://img220.imageshack.us/img220/6245/9000.jpg

Другие советы

Код ниже - это метод, который показывает, как округлить двойной до N десятичных десятиков:

private double round(double num,int numDecim){
    long p=1;
    //next line – calculate pow(10,brDecim)
    for(int i=0; i<numDecim; i++)p*=10;
    return (double)(int)(p * num + 0.5) / p;
}

Вы можете использовать двойной p=1.0; или же p*=10.0; вместо.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top