Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.11.22;
Скачать: CL | DM;

Вниз

Проверка типа данных   Найти похожие ветки 

 
8shar ©   (2009-10-06 19:35) [0]

Доброго времени суток. Хочу спросить, можно ли в Delphi проверить тип данных. Например пользователь ввел в Edit строку а мне нужно узнать принадлежит ли это строка к типу real integer byte или string. Как это сделать?


 
Игорь Шевченко ©   (2009-10-06 19:51) [1]

TryStrTo...


 
Поросенок ВинниПух   (2009-10-06 19:51) [2]

можно не проверять.
там всегда строка


 
Anatoly Podgoretsky ©   (2009-10-06 19:52) [3]

> 8shar  (06.10.2009 19:35:00)  [0]

Можешь не проверять, она всегда принадлежит к типу string


 
8shar ©   (2009-10-08 15:46) [4]


> TryStrTo...

Точно!
Но есть вопрос еще, если я описал свои тип например как:

type
TMyType = record
a : integer;
b : array[1..10] of bool;
c : string[21];
end;

и читаю его из файла:

var
fil: file of TMyType;
per : TMyType;
begin
AssignFile(fil,"c:\data.dat");
Reset(fil);
While not (eof(fil))do
begin
 read(fil,per);
 //что то делаю с per
end;
end;

то как мне проверить то ли там содержимое или нет? Является ли внутренности файла переменными заданного типа.
Можно же mp3  файл в дат dat переименовать и прога на етом месте стопарнеться. Как мне обойти эту ошибку?


 
Медвежонок Пятачок ©   (2009-10-08 16:04) [5]

> TryStrTo...

Точно!


Не очень.

var v : int64;
begin
if not TryStrToInt64("9999999999999999999",v) then ShowMessage("Упс!");


 
Franzy   (2009-10-08 16:22) [6]

Предпочинатаю процедуру val. Она возвращает код ошибки, что позволяет узнать причину, по которой не удалось преобразовать строку к числу.


 
Amoeba ©   (2009-10-08 16:23) [7]


8shar ©   (08.10.09 15:46) [4]
> как мне проверить то ли там содержимое или нет? Является
> ли внутренности файла переменными заданного типа.

Никак, кроме как попытавшись прочесть его как типизированный файл.


 
Leonid Troyanovsky ©   (2009-10-08 17:51) [8]


> 8shar ©   (08.10.09 15:46) [4]

> месте стопарнеться. Как мне обойти эту ошибку?

Можно записать в первую запись сигнатуру,
и проверять по ней.

--
Regards, LVT.



Страницы: 1 вся ветка

Текущий архив: 2009.11.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
4-1212570514
dll
2008-06-04 13:08
2009.11.22
LoadLibrary


15-1253824205
Юрий
2009-09-25 00:30
2009.11.22
С днем рождения ! 25 сентября 2009 пятница


1-1225744534
AlexN
2008-11-03 23:35
2009.11.22
Контейнер для файлов


3-1229664131
foriegn keys
2008-12-19 08:22
2009.11.22
ссылка таблицы самц на себя


1-1225286061
DelphiLexx
2008-10-29 16:14
2009.11.22
Динамические типы в классах