如何根据区域设置设置数字格式
我有一个输入框,我的网页支持英语和德语。
在文本框中,用户只能输入整数。
那么,我如何格式化数字,假设用户输入 1,2(德语),然后我想检查它是否是有效的整数,但在此之前我需要将其转换回 1.2。我怎样才能做到这一点..?
I have an input box and my webpage supports English and German.
In the text box the user should enter only integer.
So how can I format the number from let say the user input 1,2 (in German) and then I want to check whether it's a valid integer but before doing that I need to convert it back to 1.2. How can i do this..?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用 JDK 对区域设置的支持:
打印:
Use the JDK's support for Locales:
Prints:
答案就在问题中(或者至少在它的标签中)。使用
NumberFormat
解析输入的字符串,如果没有ParseException
,则该字符串是一个有效的整数。完全正确的是,
NumberFormat
会很乐意将1,2ABC
解析为1.2
。为了避免这种情况,您可以使用以ParsePosition
作为参数的 parse 方法,并检查解析后的位置是否位于字符串的末尾。The answer is in the question (or at least in its tags). Use a
NumberFormat
to parse the entered string, and if there is noParseException
, the string is a valid integer.To be completely true,
NumberFormat
will happily parse1,2ABC
to1.2
. To avoid this, you can use the parse method taking aParsePosition
as argument, and check that the position after the parsing is at the end of the string.