C# float.tryparse 用于法国文化
我有一个用户输入,其中可以包含浮点值,范围为:3.06 OR 3,06 我们所处的文化是法语,因此当用户输入 3.06 并且我对该值运行 float.tryParse 时,它不会转换为 3.06 到新变量(类型 float)中,
// inputUsedAmount.Value from UI is : 3.06
float usedAmount = 0.0f;
float.TryParse(inputUsedAmount.Value, out usedAmount);
// returns false
我可以简单地对输入的金额进行替换用户界面来自“.”到“,”,但是有没有一种优雅/更好的方式通过文化来做到这一点? 谢谢
I have a user input which can contain float values ranging from : 3.06 OR 3,06
The culture we are in is French and thus when the user inputs 3.06 and I run a float.tryParse over this value it does not get converted to 3.06 into a new variable (type float)
// inputUsedAmount.Value from UI is : 3.06
float usedAmount = 0.0f;
float.TryParse(inputUsedAmount.Value, out usedAmount);
// returns false
I can simply do a replace on the amount entered from UI from "." to ",", but is there a graceful/better way of doing this through Culture ?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用采用格式提供程序的重载。您可以通过一个法国文化信息:
You can use the overload that takes a format provider. You can pass through a French culture info:
您可以在
TryParse
方法中传递区域性:You can pass culture inside
TryParse
method: