Home  |  Delphi .net Home  |  System.SByte  |  Parse Method
Parse  
Method  
Converts a string representation of a SByte into a SByte value
SByte Structure
System NameSpace
CF1.  Function Parse ( Value : String; ) : SByte;
CF2.  Function Parse ( Value:StringValue : String; Style : NumberStyles; ) : SByte;
CF3.  Function Parse ( Value:StringValue : String; FormatProvider : IFormatProvider; ) : SByte;
CF4.  Function Parse ( Value:StringValue : String; Style : NumberStyles; FormatProvider : IFormatProvider; ) : SByte; Static;
CF : Methods with this mark are Compact Framework Compatible
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 ?,$ ...
AllowExponentE+000 format
AllowThousandsFor example : 1,000,000
AllowDecimalPointFor example : 123.456
AllowParenthesesFor example (1234)
AllowTrailingSignFor example : 123-
AllowLeadingSignFor example : -123
AllowTrailingWhiteAllow trailing blanks
AllowLeadingWhiteAllow leading blanks
AllowHexSpecifierFor 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
 
 
Delphi Programming © Neil Moffatt All rights reserved.  |  Contact the author