Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.11.22;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
2-1255076968
Pascal96
2009-10-09 12:29
2009.11.22
Задачка на Pascal


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


2-1255265203
AlexDan
2009-10-11 16:46
2009.11.22
form2.memoN в rave reports..


2-1254927060
Алексей Зотов
2009-10-07 18:51
2009.11.22
Как доработать или использовать функцию Поиска?


15-1253737804
Юрий
2009-09-24 00:30
2009.11.22
С днем рождения ! 24 сентября 2009 четверг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский