В С# у меня есть длинное значение, которое мне нужно преобразовать в десятичное число. Проблема в том, что я хочу поставить десятичную точку в определенной позиции в длинном.
Например, допустим, у меня есть следующий номер как длинный:
long l = 123456789
При преобразовании в десятичное число с плавающей запятой в третьей позиции я хочу иметь следующее:
decimal d = 123456.789
Чтобы дать вам пример, функция в идеале должна быть чем-то вроде BigDecimal.valueOf в Java, который позволяет указать длину и позицию для десятичной точки и возвращает правильное значение.
Я знаю, что одним из решений было бы отформатировать длину как строку с правильной позицией десятичной точки, а затем преобразовать ее обратно в десятичную. Другим решением было бы умножить длину на 10-нужных знаков после запятой, но мне интересно, есть ли лучшая альтернатива этому.