Gson将BigInteger序列化为数字(不是字符串)?

时间:2015-08-05 07:25:39

标签: json numbers gson

我有一个Gson的实现,它正在序列化我的自定义类的一个实例,使得BigInteger属性具有如下的String值:

"bigNumber":"12121211243123245845384534687435634558945453489543985435"

需求是一个数字值,如:

"bigNumber":12121211243123245845384534687435634558945453489543985435

这在Gson中怎么可能?

1 个答案:

答案 0 :(得分:3)

嘿,我和GSON尝试过同样的事情,它对我来说很好。

以下是我尝试过的代码:

JAVA课程:

class Data{

    BigInteger bigNumber;

    public BigInteger getBigNumber() {
        return bigNumber;
    }

    public void setBigNumber(BigInteger bigNumber) {
        this.bigNumber = bigNumber;
    }

}

将其序列化为JSON的代码:

Data data=new Data();   
data.setBigNumber(new BigInteger("12121211243123245845384534687435634558945453489543985435"));

Gson gson=new  Gson();
String jsonString=gson.toJson(data);

输出:

{"bigNumber":12121211243123245845384534687435634558945453489543985435}