Description |
Attempts to parse the Value string into a value between -128 and 127, returning a SByte object with this value.
The Style parameter determines the allowed number content. It is an enumerated type that is treated as a set of flags (it has the [Flags] attribute. This means that multiple values may be set, using logical or. The possible values are :
AllowCurrencySymbol | Allow for ?,$ ... |
AllowExponent | E+000 format |
AllowThousands | For example : 1,000,000 |
AllowDecimalPoint | For example : 123.456 |
AllowParentheses | For example (1234) |
AllowTrailingSign | For example : 123- |
AllowLeadingSign | For example : -123 |
AllowTrailingWhite | Allow trailing blanks |
AllowLeadingWhite | Allow leading blanks |
AllowHexSpecifier | For example : 0x2bcd |
Note that only a few of these allowances are meaningful for byte values.
The FormatProvider option allows for customised formatting and is beyond the scope of Delphi Basics.
|
| Notes | Warning : An exception is thrown if the parse encounters unexpected characters.
|
|
Microsoft MSDN Links |
System
System.SByte
|
|
|
A simple example |
program Project1;
{$APPTYPE CONSOLE}
uses
System.Globalization;
var
byteStr : String;
result : Integer;
begin
byteStr := '23';
result := System.SByte.Parse(byteStr);
Console.WriteLine('''' + byteStr + ''' parses to {0}', result.ToString);
Console.ReadLine;
end.
| Show full unit code | '23' parses to 23
| | Using NumberStyles | program Project1;
{$APPTYPE CONSOLE}
uses
System.Globalization;
var
style : NumberStyles;
byteStr : String;
result : Integer;
begin
// Allow for hex values and leading/trailing blanks
style := NumberStyles.AllowLeadingWhite or
NumberStyles.AllowTrailingWhite or
NumberStyles.AllowHexSpecifier;
byteStr := ' 23 '; // Hex 23 = 35
result := System.SByte.Parse(byteStr, style);
Console.WriteLine('''' + byteStr + ''' parses to {0}', result.ToString);
// Or more simply using one combined number style value
style := NumberStyles.HexNumber;
byteStr := ' AC '; // Hex AC = -84
result := System.SByte.Parse(byteStr, style);
Console.WriteLine('''' + byteStr + ''' parses to {0}', result.ToString);
Console.ReadLine;
end.
| Show full unit code | ' 23 ' parses to 35
' AC ' parses to -84
|
|
|
|