I have number of type double. double a = 12.00 I have to make it as 12 by removing .00
Please help me
Use Decimal.Truncate
It removes the fractional part from the decimal.
int i = (int)Decimal.Truncate(12.66m)
If you just need the integer part of the double then use explicit cast to int.
int number = (int) a;
You may use Convert.ToInt32 Method (Double), but this will round the number to the nearest integer.
value, rounded to the nearest 32-bit signed integer. If value is halfway between two whole numbers, the even number is returned; that is, 4.5 is converted to 4, and 5.5 is converted to 6.
here is a trick
a = double.Parse(a.ToString().Split(',')[0])
Use Math.Round
int d = (int) Math.Round(a, 0);
Reading all the comments by you, I think you are just trying to display it in a certain format rather than changing the value / casting it to int
.
I think the easiest way to display 12.00
as "12"
would be using string format specifiers.
double val = 12.00;
string displayed_value = val.ToString("N0"); // Output will be "12"
The best part about this solution is, that it will change 1200.00
to "1,200"
(add a comma to it) which is very useful to display amount/money/price of something.
More information can be found here: https://msdn.microsoft.com/en-us/library/kfsatb94(v=vs.110).aspx
Because the numbers after point is only zero, the best solution is to use the Math.Round(MyNumber)