【发布时间】:2012-08-20 08:44:47
【问题描述】:
我正在尝试以 VRML 2.0 使用的格式从 c# 输出浮点数。
根据the vrml spec,这是
IEEE 1xxx 浮点中的双精度浮点数 格式(见 2.[IEEE])。
[IEEE]:ISO/IEC 9899:1990 编程语言——C。 http://www.iso.ch/isob/switch-engine-cate.pl?searchtype=refnumber&KEYWORDS=9899 (死链接)
- 此格式的正确字符串表示形式是什么?我很难找到参考。我找到了一些关于二进制表示的解释,但没有找到关于字符串表示的解释。
- 如何按照这种格式配置 NumberFormatInfo 或 CultureInfo?
澄清:
我想生成一个 vrml 文件,我需要知道如何保证
var myCultureInfo = CultureInfo.InvariantCulture;
myCultureInfo.NumberFormat = ....
StringWriter sw = new StringWriter(MyCultureInfo)
sw.Write(myDouble);
将根据 vrml 规范生成一个 100% 的数字。
【问题讨论】:
-
您的意思是,在 VRML 中正确的字符串表示是什么?因为 AFAIK IEEE 标准定义了二进制表示,但同一数字可能有多个字符串表示(例如
12.34、12,34、+12.34、1.234E+1)。 -
是的,我想生成一个 VRML 文件,我需要知道如何根据规范格式化我的数字。由于 VRML 是纯文本格式,我需要将我的数字转换为字符串
标签: c# floating-point cultureinfo vrml iformatprovider