Updated: March 2012
Converts the specified string representation of a number to an equivalent decimal number.
Assembly: mscorlib (in mscorlib.dll)
Public Shared Function ToDecimal ( _ value As String _ ) As Decimal
public static decimal ToDecimal( string value )
public: static Decimal ToDecimal( String^ value )
static member ToDecimal : value:string -> decimal
Parameters
- value
- Type: System.String
A string that contains a number to convert.
Return Value
Type: System.DecimalA decimal number that is equivalent to the number in value, or 0 (zero) if value is null.
| Exception | Condition |
|---|---|
| FormatException |
value is not a number in a valid format. |
| OverflowException |
value represents a number that is less than MinValue or greater than MaxValue. |
Using the ToDecimal method is equivalent to passing value to the Decimal.Parse(String) method. value is interpreted by using the formatting conventions of the current thread culture.
If you prefer not to handle an exception if the conversion fails, you can call the Decimal.TryParse method instead. It returns a Boolean value that indicates whether the conversion succeeded or failed.
The following example illustrates the use of ToDecimal. It attempts to convert a String to a Decimal, and throws the possible exceptions that may arise during the conversion.
Public Sub ConvertStringDecimal(ByVal stringVal As String) Dim decimalVal As Decimal = 0 Try decimalVal = System.Convert.ToDecimal(stringVal) System.Console.WriteLine("The string as a decimal is {0}.", _ decimalVal) Catch exception As System.OverflowException System.Console.WriteLine( _ "Overflow in string-to-decimal conversion.") Catch exception As System.FormatException System.Console.WriteLine( _ "The string is not formatted as a decimal.") Catch exception As System.ArgumentException System.Console.WriteLine("The string is null.") End Try ' Decimal to string conversion will not overflow. stringVal = System.Convert.ToString(decimalVal) System.Console.WriteLine("The decimal as a string is {0}.", _ stringVal) End Sub
public void ConvertStringDecimal(string stringVal) { decimal decimalVal = 0; try { decimalVal = System.Convert.ToDecimal(stringVal); System.Console.WriteLine( "The string as a decimal is {0}.", decimalVal); } catch (System.OverflowException){ System.Console.WriteLine( "The conversion from string to decimal overflowed."); } catch (System.FormatException) { System.Console.WriteLine( "The string is not formatted as a decimal."); } catch (System.ArgumentNullException) { System.Console.WriteLine( "The string is null."); } // Decimal to string conversion will not overflow. stringVal = System.Convert.ToString(decimalVal); System.Console.WriteLine( "The decimal as a string is {0}.", stringVal); }
public: void ConvertStringDecimal( String^ stringVal ) { Decimal decimalVal = 0; try { decimalVal = System::Convert::ToDecimal( stringVal ); System::Console::WriteLine( "The String as a decimal is {0}.", decimalVal ); } catch ( System::OverflowException^ ) { System::Console::WriteLine( "The conversion from String to decimal overflowed." ); } catch ( System::FormatException^ ) { System::Console::WriteLine( "The String is not formatted as a decimal." ); } catch ( System::ArgumentNullException^ ) { System::Console::WriteLine( "The String is 0." ); } // Decimal to String conversion will not overflow. stringVal = System::Convert::ToString( decimalVal ); System::Console::WriteLine( "The decimal as a String is {0}.", stringVal ); }
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Portable Class Library
Supported in: Portable Class LibraryWindows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Reference
|
Date |
History |
Reason |
|---|---|---|
|
March 2012 |
Expanded the Remarks section. |
Customer feedback. |