我有一个双倍的文本表示,并且想知道是否可以将它往返翻回。如果我也想接受任何种类的数字式输入,我怎么知道这一点?或者,我怎么知道在使用Double.Parse解析双字符串时是否会丢失任何精度?或者,我如何ToString一个双重匹配与另一个双字符串相同的格式?任何这些问题的答案都是我想的解决方案。如何知道双弦是否安全?
4
A
回答
4
使用R
格式说明转换的double
为string
:
myDouble.ToString("R")
见The Round-trip ("R") Format Specifier MSDN上。
往返(“R”)格式说明符保证转换为字符串的数值将被解析回相同的数值。该格式仅支持Single,Double和BigInteger类型。
(重点煤矿)
-1
当然,这不是几个原因往返安全:
解析字符串时,双,因为双不包含有关其视觉表现的任何信息的数字格式丢失。
虽然字符串表示法通常是十进制的,但double是二进制浮点数。所以0.1的双精度不会精确到0.1,因为0.1的二进制表示没有有限的数字。您可以解析为十进制而不是双精度,以避免此问题。
我会建议建立一个存储数字和字符串表示的结构。
相关问题
- 1. 如何知道nuget工具是否是线程安全的(.NET)?
- 2. getdns API:我如何知道RESPSTATUS_NO_NAME响应是否安全?
- 3. 如何知道本地方法是安全/不安全的?
- 4. 如何知道是否
- 5. Stripe:我如何知道卡是否安全以及如何对其充电
- 6. 我怎么知道连接是否安全真实?
- 7. 知道是否window.close()会显示安全警告
- 8. 不知道是否可以安全地实现这样的Asynctask
- 9. 如何知道Windows是否有来自cmd或python的未决安全更新?
- 10. 如何知道在NS子类中使用父方法是否安全?
- 11. 我的登录功能是否安全?不知道如何改进它
- 12. 如何知道当前的路径是安全路径与否,在ASP.NET
- 13. 您如何知道公共Docker映像是安全的?
- 14. 为什么是安全的弦
- 15. 知道小部件是否安装?
- 16. 如何知道textFields是全满的
- 17. 如何知道NSURLSessionConfiguration是否是backgroundSessionConfiguration?
- 18. 如何知道指针是否是NSObject?
- 19. 如何知道NSWindow是否是前窗?
- 20. 如何知道表是否是数组?
- 21. 如何知道页面是否真的完全加载?
- 22. MVC5 - 如何知道动作输入是否完全为空
- 23. 如何知道活动结果集是否被完全提取?
- 24. 如何知道滚动内部查看是否完全可见
- 25. 如何知道图像是否已完全传输?
- 26. Java观察器 - 如何知道文件是否完全创建
- 27. 如何在Ruby中知道文件是否完全下载
- 28. 如何知道jQuery是否完全加载?
- 29. 如何知道用户是否完全登录?
- 30. 如何知道NSWindow在Mac OS X Lion中是否全屏?
你有什么已经尝试过?一些测试可能? –
你是什么意思“匹配相同的格式作为另一个双串”?你有这种格式指定,还是不? I.E.我现在在此向您提供这个字符串:“123sd344 + 334.ere”,我声称这是一个格式良好的双数字。你怎么猜这是什么格式? – quetzalcoatl
嗯。我正在考虑限制有效数字和指数的数量,所以我可以保证,任何以#####格式编写的数字都是安全的。 –