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

Вниз

Тупой вопрос!!!   Найти похожие ветки 

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

Наверх





Память: 0.47 MB
Время: 0.039 c
8-1144233342
dmitrlast
2006-04-05 14:35
2006.11.05
Файл ресурса и mid/wav файл


8-1137653425
ronyn
2006-01-19 09:50
2006.11.05
DS Pack прокрутка.


15-1160645496
TohaNik
2006-10-12 13:31
2006.11.05
Как определить нигерийскую фамилию:) или продолжение будет...?


2-1161582359
X_ksandr_X
2006-10-23 09:45
2006.11.05
сортирвка DbGrid


11-1137435264
Vladimir Kladov
2006-01-16 21:14
2006.11.05
RefInc / RefDec - пора разобраться





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский