Текущий архив: 2006.11.05;
Скачать: CL | DM;
ВнизТупой вопрос!!! Найти похожие ветки
← →
Varf (2006-10-24 08:50) [0]Гсопода помогите че то голова не работает!!!!
---есть строка типа: 1.09.2006 00:00 (тип Variant)
нужно ее сделать типом TDate вида:1.09.2006
заранее спасибо!!!
← →
Джо © (2006-10-24 08:55) [1]
var
V: Variant;
Dt: TDate;
...
V := "1.09.2006 00:00";
DateSeparator := ".";
TimeSeparator := ":";
Dt := StrToDateTime(V);
← →
ЮЮ © (2006-10-24 08:55) [2]"разобрать" стоку на составляющие: Copy
преобразовать к целым: StrToInt
преобразовать к TDate: EncodeDateTime
← →
ЮЮ © (2006-10-24 08:57) [3]1.09.2006 может быть как 1 сентября, так и 9 января.
← →
Джо © (2006-10-24 09:02) [4]>
>
> [3] ЮЮ © (24.10.06 08:57)
> 1.09.2006 может быть как 1 сентября, так и 9 января.
Что ж, тогда так:var
V: Variant;
Dt: TDate;
...
V := "1.09.2006 00:00";
ShortDateFormat := "d.mm.yyyy";
Dt := StrToDateTime(V);
← →
Varf (2006-10-24 09:03) [5]Спасибо всем!!!
я про это не знал:
DateSeparator := ".";
TimeSeparator := ":";
← →
Джо © (2006-10-24 09:08) [6]> [5] Varf (24.10.06 09:03)
Лучше используй подход из поста [4].
← →
Varf (2006-10-24 09:11) [7]да да спасибо
← →
Anatoly Podgoretsky © (2006-10-24 09:11) [8]Это не строка, но если преобразовать к строке, то далее задача простая
StrLength(S, Pos(" ", S) - 1)
← →
Anatoly Podgoretsky © (2006-10-24 09:12) [9]
> Лучше используй подход из поста [4].
У которого могут быть неожиданные побочные эффекты. Подход не системный.
← →
Джо © (2006-10-24 09:14) [10]> [9] Anatoly Podgoretsky © (24.10.06 09:12)
Подход не системный.
Обоснуйте.
← →
Anatoly Podgoretsky © (2006-10-24 09:35) [11]Ему надо отрезать то что после пробела, а вот сам вопрос
> нужно ее сделать типом TDate
В общем случае не имеет решения, в частном решается, если известен точный формат и он гарантируется.
← →
Джо © (2006-10-24 09:39) [12]> [11] Anatoly Podgoretsky © (24.10.06 09:35)
> Ему надо отрезать то что после пробела, а вот сам вопрос
Отрезать не проблема :) Да, в принципе, это даже не нужно, достаточно использовать StrToDate.
>
> в частном решается, если
> известен точный формат и он гарантируется.
Формат был описан в [0]. А гарантироваться он обязан в любом случае — что в случае использования готовой библиотечной функции StrToDate[Time], что в случае изготовления самописного парсера, не так ли?
← →
Ketmar © (2006-10-24 09:45) [13]как же я люблю велосипеды! в CDM я дату/время честно разламываю на кусочки руками, и делаю EncodeDateTime(). %-)
← →
Anatoly Podgoretsky © (2006-10-24 12:54) [14]есть строка типа: 1.09.2006 00:00 (тип Variant)
Тут возможны всякие варианты, поэтому и предложено преобразовать в строку, но тут опять варианты, будет ли в результате строка "1.09.2006 00:00"
Пока для меня вопрос смутный.
Страницы: 1 вся ветка
Текущий архив: 2006.11.05;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.045 c