Как сохранить поплавки не в экспоненциальной записи? - PullRequest
0 голосов
/ 22 сентября 2019

JsonSerializer сохраняет значения с плавающей точкой в ​​файле JSON в экспоненциальной записи (например, 1.774073E-05). Как изменить свои настройки, чтобы значения сохранялись как обычные значения с плавающей запятой, например 0.0001774073?

string text = File.ReadAllText(path, Encoding.UTF8);
JObject json = JObject.Parse(text);

using (StreamWriter file = File.CreateText(savePath))
{
    JsonSerializer serializer = new JsonSerializer();
    serializer.Serialize(file, json);
}

1 Ответ

0 голосов
/ 23 сентября 2019

Мне нужно убедиться, что вы выполняете эту часть: Плавания являются научными / экспоненциальными обозначениями.Память, зарезервированная для числа с плавающей запятой, содержит mantisse (значащие цифры) и показатель степени больше 10. Этот показатель показывает, как работает плавающая (подвижная) часть с плавающей запятой.Таким образом, они охватывают значения от «размера вселенной» до «размера атома».

Вы можете представлять их как число человека.Но для этого нужно безумно много нулей, большинство людей не беспокоятся.45-38 нулей для поплавка на самом деле.И это не даст вам никаких дополнительных данных или точности, так как математика все еще выполняется ЦП в формате с плавающей запятой.Записывать их с нулями - это просто бессмысленная трата символов (и, следовательно, байтов), поэтому за пределами ввода или вывода для пользователя никто не будет беспокоиться.

Не то, чтобы я думал, что 150 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 - это действительно , что человек, читаемый с самого начала.Честно говоря, 1,5 * 10 ^ 45 кажется мне более читабельным.И каждый, кто еще когда-либо будет использовать такой номер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...