首页 / C# / 在C#中解析来自不同文化的数字
在C#中解析来自不同文化的数字
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了在C#中解析来自不同文化的数字,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1098字,纯文字阅读大概需要2分钟。
内容图文
我正在编写一些代码来将字符串解析为double,但是这个字符串是从另一台机器传递给我的.当然,文化可能会有所不同.所以,机器A可能会发送给我:
"0.5"
机器B可能会发给我
"0,6"
因为它在德国并且有着不同的文化.
正确解析这两个输入的最佳方法是什么?有人建议使用CultureInfo.InvariantCulture作为Convert.ToDouble的参数,但这不会只对我生产上述字符串的地方有帮助,而不是当别人可以发给我不同的字符串时?
我是否正确地认为我需要知道源文化并在尝试转换之前更改Thread.CurrentThread.CurrentCulture以匹配?
解决方法:
它是一台机器还是一个人发送这个?如果它是一台机器 – 也就是说,在另一台机器上有一个应用程序决定要发送什么数据,而不是用户输入的“盲”传输,那么应该指定这类事物的格式而不是与语言环境相关的格式.通常,这意味着您同意使用CultureInfo.InvariantCulture或与其他应用程序不是.NET的文化等效的文化.
如果它是一个人,你知道他们的语言环境,那么你可以使用double.Parse(decString,cultureInfo).如果某些讲英语的人借用他们讲德语的朋友的电脑,这可能会失败.
如果你知道不会有任何分组分隔符(例如123,456.78或123’457,78)那么你可以使用double.Parse(decString.Replace(‘,’,’.’),CultureInfo.InvariantCulture)但不能如果有分组,那意味着123,456.78变为123.456.78.
内容总结
以上是互联网集市为您收集整理的在C#中解析来自不同文化的数字全部内容,希望文章能够帮你解决在C#中解析来自不同文化的数字所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。