gpt4 book ai didi

c# - Json.NET 中的数字格式 "R"

转载 作者:行者123 更新时间:2023-11-30 21:09:42 30 4
gpt4 key购买 nike

我正在使用 Json.NET 输出记事本可读的 JSON 文件。输出几乎是完美的,除了非常小的数字 (-0.000004) 被转换为科学记数法。这不是我的本意。

我下载了源代码并在 JsonConvert.cs - JsonConvert.ToString(double) 中,我看到了以下行:

value.ToString("R", CultureInfo.InvariantCulture)

根据 C# 数字格式化文档,“R”应该保证往返,而不是转换为科学记数法,但它确实如此。我将格式字符串更改为 "0.############",效果很好。但这是正确的做法吗?

最佳答案

我会说是的,“0.############”是正确的方法,因为它有效,很容易理解,并且根据 the documentation , 往返格式可能会也可能不会使用科学记数法。唯一的保证是“转换为字符串的数值将被解析回相同的数值”。我看不出不使用科学记数法。

如果您希望它始终是特定位数,那么您可以使用 Fixed Point格式。

value.ToString("F8"); // will be 8 digits

关于c# - Json.NET 中的数字格式 "R",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8918763/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com