|
■No94063 (KEITA さん) に返信 > @文字列「001250」を「12.50」という数値に変換
固定長6桁の数字が並んでいて、そのうち 左4桁が整数部、右2桁が小数部という変換ルールで良いのなら、こんな感じ。
Dim s As String = "001250" Dim d As Decimal = CDec(s) / 100D
数字以外(空文字列など)が渡される可能性がある場合は、 CDec ではなく Decimal.TryParse メソッドの利用をお奨めします。
ただし上記のように 100d で割った場合、 12.50 ではなく 12.5 が生成されます。(数値としては同じですが)
12.50 という値として得たい場合には、小数点記号を自分で補って Dim d As Decimal = CDec(s.Substring(0, 4) & "." & s.Substring(4)) あるいは Dim d As Decimal = CDec(s.Substring(0, 4) & System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator & s.Substring(4)) などとします。
> A変換後の「12.50」に3をかけて「37.50」という数値を出したい
d *= 3D
|