Делать большие и малые числа удобочитаемыми [дубликаты]
На этот вопрос уже есть ответ:
Форматирование больших чисел с помощью .NET 5 ответовЯ хотел бы напечатать свои очень маленькие цифры в C # удобным для человека способом, например:
30µ
для3E-5
или456.789n
для0.000000456789
.
Я знаю о Humanize_numberункция @ () из BSD в C, но совместима только с битами, не с плавающей запятой и с двойными Есть ли в C # эквивалент, который их поддерживает?
Кроме того, он должен сохранять определенную точность при отображении чисел, например:
0.003596
должен отображаться как3.596µ
, не3.6µ
(или хуже,4µ
).
Возможный ответ здесь: Форматирование больших чисел с помощью .NET, но с учетом отрицательного значения log10 усекает числа до 1 цифры после запятой. На мой взгляд, это далеко не завершено.
Примеры того, как я хотел бы представить вещи:
3000 3K
3300 3.3K
3333 3.333K
30000 30k
300000 300k
3000000 3M
3000003 3.000003M // or 3M if I specify "4 digits precision"
0.253 253m
0.0253 25.3m
0.00253 2.53m
-0.253003 -253.003m
Я не смог сформулировать свой вопрос, чтобы найти соответствующие ответы в SO, поэтому, если на вопрос уже был дан ответ, ответьте!