文字列を小数点以下7桁のdoubleに変換するのに助けが必要です。文字列が"00000827700000"
あり、82.77に変換する必要があります
{0:N7}でString.Format()を使用しようとしましたが、成功しませんでした。
次のものを使用できるようです。
decimal x = decimal.Parse(text.Substring(0, 7) + "." +
text.Substring(7),
CultureInfo.InvariantCulture);
後続のゼロを(ある程度まで)保持するため、実際には82.7700000に解析されますが、それでdecimal
十分でしょうか?そうではなく、2番目の引数を次のように変更できます
text.Substring(7).TrimEnd('0')
少なくとも、の代わりに使用することを検討することを強くお勧めします。この値が何を表すかについては説明していませんが、保存する必要のある10進数として保存すると、私にはもっと匂いがします。decimal
double
decimal
編集に基づいて、それは次のように簡略化することができます
var text = "00000827700000";
var x = decimal.Parse(text, CultureInfo.InvariantCulture) / 10000000;
Console.Write(String.Format("{0:N7}", x));