Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  


Основы Delphi
StrToInt64Def
Функция
Преобразует строку с целым значением в Int64, учитывая значение по умолчанию SysUtils unit
  function StrToInt64Def ( const IntegerString : string; Default : Integer ) : Int64;
Описание
Функция StrToInt64Def конвертирует строку с целым значением - IntegerString, такую как '123', в целое Int64, возвращая Default, если преобразование не удалось.

Она поддерживает положительные и отрицательные значения, шестнадцатеричные числа с префиксов $ или 0x.
Примечания
Никакие конверсионные ошибки не генерируются - плохое преобразование просто возвращает (Default) значению по умолчанию.
Похожие команды
Int64  64 битовое целое число - наибольшее в Delphi

IntToStr  Конвертирует целое число в строку

StrToInt  Преобразует строку с целым значением в Integer

StrToInt64  Преобразует строку с целым значением в Int64

StrToIntDef  Преобразует строку с значение с типом Integer, учитывая значение по умолчанию

 
Пример кода : Преобразование десятичных и шестнадцатеричных чисел
var
  A, B, C, D, E, F : Int64;

begin
  A := 32;
  B := StrToInt64Def('100',0);    // строка '100' преобразуется в целочисленное 100
  C := StrToInt64Def('  -12',0);  // Начальные пробелы игнорируются
  D := StrToInt64Def('$1E',0);    // Шестнадцатеричные значения начинаются с '$'
  E := StrToInt64Def('-0x1E',0);  // ... или с '0x'
  F := A + B + C + D + E;  // Складываем все эти целые числа

  ShowMessage('A : '+IntToStr(A));
  ShowMessage('B : '+IntToStr(B));
  ShowMessage('C : '+IntToStr(C));
  ShowMessage('D : '+IntToStr(D));
  ShowMessage('E : '+IntToStr(E));
  ShowMessage('F : '+IntToStr(F));
end;
A : 32
B : 100
C : -12
D : 30
E : -30
F : 120
 
Пример кода : Захват ошибок преобразования строки в целочисленное значение
var
  A : Int64;

begin
  // Нет необходимости перехватывать конверсионные ошибки
  A := StrToInt64Def('100 ', 55);    // Конечные пробелы не поддерживаются
  ShowMessage('Value = '+IntToStr(A));

  A := StrToInt64Def('$FG' , 66);    // 'G' - недопустимая шестнадцатеричная цифра
  ShowMessage('Value = '+IntToStr(A));
end;
Value = 55
Value = 66
 



© Форум Delphi   |  Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки   |  Английская версия