mirror of
https://gitee.com/dromara/hutool.git
synced 2026-02-09 09:16:26 +08:00
修复 NumberUtil.parseNumber使用中文逗号导致识别问题(issue#4197@Github)
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package cn.hutool.v7.core.math;
|
||||
|
||||
import cn.hutool.v7.core.array.ArrayUtil;
|
||||
import cn.hutool.v7.core.convert.ConvertUtil;
|
||||
import cn.hutool.v7.core.text.CharUtil;
|
||||
import cn.hutool.v7.core.text.StrUtil;
|
||||
|
||||
@@ -370,6 +371,9 @@ public class NumberParser {
|
||||
numberStr = StrUtil.subSuf(numberStr, 1);
|
||||
}
|
||||
|
||||
// issue@4197@Github 转为半角
|
||||
numberStr = ConvertUtil.toDBC(numberStr);
|
||||
|
||||
try {
|
||||
final NumberFormat format = NumberFormat.getInstance(locale);
|
||||
if (format instanceof DecimalFormat) {
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package cn.hutool.v7.json.issues;
|
||||
|
||||
import cn.hutool.v7.json.JSONUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
public class Issue4197Test {
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
static
|
||||
class TestDTO {
|
||||
|
||||
private BigDecimal h;
|
||||
}
|
||||
|
||||
@Test
|
||||
void toBeanTest() {
|
||||
final TestDTO bean = JSONUtil.toBean("{\"h\":\"123,456,789\"}", TestDTO.class);
|
||||
Assertions.assertEquals(new BigDecimal("123456789"), bean.getH());
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user