Сохранять конечные нули при разборе Json с помощью jayway JsonPath
Я использую jayway json-path - 2.4.0 для разбора Json. При синтаксическом анализе json, если json содержит какое-либо двойное значение, его усекаются завершающие нули. Например, у меня есть строка Json, как показано ниже.
{"name": "Paddy", "value": 60.10}
И мой код:
package com.test;
import com.jayway.jsonpath.DocumentContext;
import com.jayway.jsonpath.JsonPath;
import java.math.BigDecimal;
public class TestClas {
public static void main(String[] args) {
String value = "{\"name\" : \"Paddy\" , \"value\": 60.10}";
DocumentContext docCtx = JsonPath.parse(value);
JsonPath jsonPath = JsonPath.compile("$.value");
Object result = docCtx.read(jsonPath);
System.out.println(result);
}
}
И он просто печатает 60.1, но мне нужно 60.10. Как получить результат без усечения конечных нулей.
1 ответ
Вы не указываете тип - вы просто используете Object
- так это выбор Double
автоматически. Double
не имеет понятия конечных нулей: это аспект отображения числа.
Смотрите, что возвращается, когда?