java - 使用指定的语言环境 (sv) 和 NumberFormat 将 String 解析为 Long

标签 java string parsing locale

我尝试使用以下代码在使用瑞典语言环境的 java 中将字符串 (14 123) 解析为 long:

String longString = "14 123"
NumberFormat swedishNumberFormat = NumberFormat.getInstance(new Locale("sv"));
System.out.println(swedishNumberFormat.parse(longString).longValue());

这段代码的输出是14(应该是14123)。根据 this question我尝试了 sv 和 sv_SE 语言环境,但这次两种情况下的结果是相同的。

根据 http://www.localeplanet.com/java/sv/index.htmlhttp://www.localeplanet.com/java/sv-SE/index.html两种情况下的分组分隔符都是一个空格()那么为什么要进行长解析的字符串不能处理一个,对于语言环境,格式正确的 double 值存储为字符串?

最佳答案

瑞典语和法语一样,需要努力。不间断空间。

longString = longString.replace(' ', '\u00a0');

麻烦。

关于java - 使用指定的语言环境 (sv) 和 NumberFormat 将 String 解析为 Long,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26255120/

相关文章:

java - Spring RestTemplate 动态 JSON 属性名称

c - 如果输入了5个或更多字符,如何打印错误消息

java - 我可以将对象从字符串对象数组转换为字符串吗?获取 classCastException

android - 如何仅在字符串中的整数之间放置空格

PHP - 如何读取 json 文件头和其他对象并插入 mysql

java - 通量。有没有办法重试最后一个元素?

java - 在 JSP 中呈现 JSON 数据的最佳实践是什么?

java - Spring Boot ConnectException 没有被捕获

file - Groovy 解析文本文件

php - 将目标_blank 添加到外部链接 - Parsedown PHP