如何在Java中获得法语格式数的双倍

时间:2017-12-28 20:06:16

标签: java double number-formatting french

我尝试获取一个以法国风格格式化的数字的双值。 所以Text 1 003,25应存储为值(1003.25)。

From database: 1003.25
	German: 1.003,25
	French: 1 003,25
	English: 1,003.25

To Database: 
	from German: 1003.25
	from French: 1003.25
	from manual French: 1.0
	from Englisch: 1003.25

{!! Form::open(['action' => ['LibraryController@newcomment', $sth->myuserid]]) !!}

        {!! Form::label('title', 'Title:') !!}
        {!! Form::text('title', null) !!}

        {!! Form::label('contents', 'Contents:') !!}
        {!! Form::textarea('contents', null) !!}

        {!! Form::submit('Send') !!}

{!! Form::close() !!}

有没有人知道,为什么手动法语值是1.0而不是1003.25? 我该如何解决?在实际程序中,值来自TextField的字符串。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

法语格式文本中的空格是NO-BREAK SPACE,而不是常规空格。

如果您将字符串文字更改为"1\u00a0003,25",则会有效。

如果该文本来自外部来源,例如用户,那么你可以用不间断空格替换空格,例如

parse(manualFRA.replace(' ', '\u00a0'))