-1

数値形式の例外エラーが表示されます。DB に文字列値として格納されている値を比較する必要があります。以下のコードの「パーセント」の値は +10.05% または -10.05% のようになり、「パーセントを超える」値は 11.05 のようになります「パーセント以下」の値は 10.00 になります。

コード:

percentabove = cursor.getString(cursor.getColumnIndex(DBConstants.PERCENTABOVE));
 percentbelow = cursor.getString(cursor.getColumnIndex(DBConstants.PERCENTBELOW));
        }while(cursor.moveToNext());

        double newprice= Double.parseDouble(percent);
        double maxprice = Double.parseDouble(percentabove);
        double minprice = Double.parseDouble(percentbelow);


        if(newprice>maxprice || newprice<minprice)
        {

            String status="";
            if(newprice>maxprice)
            {
                status="Up";
            }
            else if(newprice<minprice)
            {
                status="Down";
            }

double 形式を他のデータ型形式に変更する必要があります。Decimalformat を使用できますか?何か提案があります..

4

1 に答える 1

0

NumberFormatExceptionは、この例外が次のとおりであることを明確に示しています。

アプリケーションが文字列をいずれかの数値型に変換しようとしたが、文字列の形式が適切でないことを示すためにスローされます。

コメントに示されているように、値を調べてみましたpercentか? おそらく、値をきれいにする必要があります (値のトリミング、追加のコンマの削除など)。perceabovepercentbelow

于 2013-03-02T08:17:16.270 に答える