Format double value to fixed length string

  • 11 years ago

    Hi all,

    I have a question on formating double values to string...I know how to do it for fixed length of decimals but I cannot find a way how to format it so that a value will always have 4 numbers and depending on that value how many decimals there will be.


    For example i have a value 125.46458645 which I want to format to 125.5

    and value 12.54654747654 which I want to format to 12.55

    and value 1.254656555 to 1.255


    Best regards



  • 11 years ago

    There are quite a few ways to achieve what you want, although you will have to type your result back to Decimal/Double afterwards. The problem is you are formatting the number, which can only be done via string manipulation. I'm sure there is a more direct approach, but I couldn't be bothered reading about Number Styles. Anyhoo.

    Use String.Format("{0:F3}", 124.5)

    Or MyDecimalValue.ToString("##.####")

    The first method uses format specifiers, and there are many types to coincide with various formats, but if you just take the method, F3 = 3 decimal places.

    The second method uses placeholders to format the text, and you just use the necessary amount of string[#] to act as a placeholder for the required number format. Don't forget to type the result back to Decimal/Double.

Post a reply

Enter your message below

Sign in or Join us (it's free).


Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone” - Bjarne Stroustrup