2014-12-20 3 views
-1

Я попытался Как этоCursor.getString Возвращает Неожиданный выход

curcountdueamount = mCon.DataFetch("select sum(balance) as totalamount from duebills"); 

while (curcountdueamount.moveToNext()) { 

String xCountDueAmount = curcountdueamount.getString(curcountdueamount 
        .getColumnIndex("totalamount")); 

} 

Общая сумма возвращается из запроса в 6268064.695

Но xCountDueAmount Возвращает, как = 6.26806e + 06

, когда общая сумма менее он возвращает значение, когда он превышает некоторый диапазон, он возвращает десятичное значение.

ответ

1

Постарайтесь получить значение как длинный.

Long x = curcountdueamount.getLong(curcountdueamount 
        .getColumnIndex("totalamount")); 
+0

Спасибо, я получил решение – mdsaleem1804

1

e+06 является scientific notation и средство 10 к силе 6.

Значение в колонке с плавающей точкой и преобразования его в строку использует экспоненциальное по умолчанию для малых и больших значений.

Для управления форматированием самостоятельно используйте getDouble(), чтобы получить значение с плавающей запятой самостоятельно и использовать, например, NumberFormat, чтобы преобразовать его в строку.

Смежные вопросы