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

Вниз

StrToDateTime -> EConvertError   Найти похожие ветки 

 
yaJohn   (2007-02-24 17:47) [0]

Что-то я туплю...
По каким причинам код StrToDateTime(DateTimeToStr(now)) может генерировать EConvertError?????


 
Юрий Зотов ©   (2007-02-25 01:18) [1]

Строка не является DateTime. Например, содержит не цифры. Или содержит что-то типа "30.14.5007 25:61:61". Или содержит не тот DateSeparator/TimeSeparator (что наиболее вероятно).


 
Германн ©   (2007-02-25 01:23) [2]


> yaJohn   (24.02.07 17:47)
>
> Что-то я туплю...
> По каким причинам код StrToDateTime(DateTimeToStr(now))
> может генерировать EConvertError?????

Только в случае, если Now переопределен в программе.


 
Юрий Зотов ©   (2007-02-25 01:45) [3]

Блин, невнимательно прочитал вопрос. Сорри. Конечно, [2].


 
Германн ©   (2007-02-25 03:12) [4]


> Юрий Зотов ©   (25.02.07 01:18) [1]
>
>... Или содержит
> не тот DateSeparator/TimeSeparator (что наиболее вероятно).
>

И вот тут-то я понял! Понял возможную причину возникновения "иногда" в моей программе EConvertError! Спасибо Юра, спасибо автору сабжа! Спасибо моему "моску", что он смог сопоставить в один ряд несколько факторов! Спасибо Николаю(sniknik) хоть он и обращался ко мне тогда как к школьнику!


 
Суслик ©   (2007-02-25 03:13) [5]


> Германн ©   (25.02.07 03:12) [4

ты не темни, восторженный, дело говори - что твой брэйн такого сопоставил?


 
Германн ©   (2007-02-25 03:36) [6]


> Суслик ©   (25.02.07 03:13) [5]
>
>
> > Германн ©   (25.02.07 03:12) [4
>
> ты не темни, восторженный, дело говори - что твой брэйн
> такого сопоставил?
>

Дим. Тебе мои сопоставления, скорее всего, без надобности.
Я тогда вызов StrToDateTime помещал в защищенный блок и при исключении записывал в базу некий стандарт даты-времени вместо того, что получено от прибора. Но если при этом была запущена программа тогдашнего нашего "земляного червяка" (ака программиста), то вот она причина исключения, которое "вроде бы" уже перехвачено.


 
Palladin ©   (2007-02-25 07:32) [7]

мда...


 
yaJohn   (2007-02-26 11:14) [8]

Я конечно дико извиняюсь... Но ответа на мой вопрос я так и не получил.
Функция now не переопределена, а даже если бы и была, то коль уж код компилируется - DateTimeToStr получает нечто приводимое к TDateTime.
Не тот DateSeparator/TimeSeparator на мой взгляд приводит к симметричным эффектам и в StrToDateTime и в DateTimeToStr, т.е. в вызове StrToDateTime(DateTimeToStr()) к исключению приводить не может. И тем не менее исключение возникает, это объективный факт.

У меня объяснения сего феномена нету, как нету его и в ответах. Если не считать ответом перемещение топика в раздел "начинающим".


 
ASoft   (2007-02-26 11:21) [9]


> yaJohn   (24.02.07 17:47)

какая причина приводить к StrToDateTime(..?


 
evvcom ©   (2007-02-26 11:31) [10]

> [4] Германн ©   (25.02.07 03:12)

Так есть же function StrToDateTime(const S: string; const FormatSettings: TFormatSettings): TDateTime;

> [2] Германн ©   (25.02.07 01:23)
> Только в случае, если Now переопределен в программе

Может скорее StrToDateTime/DateTimeToStr? Потому как, ну вернет Now на неделю раньше/позже, какая разница?

> [6] Германн ©   (25.02.07 03:36)

А чего отладчик или логи ничего не показали?

> [8] yaJohn   (26.02.07 11:14)

Отладчик-то чего-нить показал? Или ты о нем не слышал?


 
sniknik ©   (2007-02-26 11:41) [11]

> Не тот DateSeparator/TimeSeparator на мой взгляд приводит к симметричным эффектам и в StrToDateTime и в DateTimeToStr
зачем сомнения? проверить же можно в 30 сек...
procedure TMainForm.Button1Click(Sender: TObject);
begin
 DateSeparator:= "@";
 DateTimePicker1.DateTime:= StrToDateTime(DateTimeToStr(now));
end;
ошибка... и только   ShortDateFormat:= "dd@mm@yyyy"; восстанавливает "статус кво". вот тебе и "симметричность".

> Если не считать ответом перемещение топика в раздел "начинающим".
правильное перемещение... (судя по 2 дням поиска элементарного). и полезное (откуда перемещено? не видел...).


 
yaJohn   (2007-02-26 11:41) [12]

2 ASoft
> какая причина приводить к StrToDateTime(..?
Уже имеющийся код. Само собой я не вызываю StrToDateTime(DateTimeToStr(now)), это формальное описание проблемы. Водном месте вызывается DateTimeToStr, результат через N+1 инстанцию передаётся в другое место, где нужно получить из него снова TDateTime. Строка в процессе не изменяется.

Можно сформулировать вопрос иначе: при каких условиях строка полученная DateTimeToStr не является корректной с точки зрения  DateTimeToStr?  

2 evvcom
> Отладчик-то чего-нить показал? Или ты о нем не слышал?
В молодости пользовался турбодебагером. И с каких пор мы перешли на "ты"?


 
sniknik ©   (2007-02-26 11:46) [13]

> И с каких пор мы перешли на "ты"?
вообщето в инете это принято...


 
yaJohn   (2007-02-26 11:50) [14]


..
>  DateSeparator:= "@";
>  DateTimePicker1.DateTime:= StrToDateTime(DateTimeToStr(now));
...
ько   ShortDateFormat:= "dd@mm@yyyy"; восстанавливает  "статус кво". вот тебе и "симметричность".

Тоже верно...

Хотя в моем случае проблема оказалась в совершенно другом месте: изменение формата даты времени в многопоточной среде. Так что всем спасибо, вопрос себя исчерпал.


 
evvcom ©   (2007-02-26 11:56) [15]

> [12] yaJohn   (26.02.07 11:41)
> Уже имеющийся код.

Править надо такой код нежалеючи.

> И с каких пор мы перешли на "ты"?

см. [12] В инете нет ни возраста, ни чего такого другого. А если не нравится, ник надо было выбирать типа "Евгений Батькович, обращаться на Вы", а не "я-Джон"


 
evvcom ©   (2007-02-26 11:57) [16]

> [15] evvcom ©   (26.02.07 11:56)
> см. [12]

см. [13], sorry


 
Anatoly Podgoretsky ©   (2007-02-27 00:21) [17]

> yaJohn  (26.02.2007 11:41:12)  [12]

> В молодости пользовался турбодебагером. И с каких пор мы перешли на "ты"?

Прошу прощения, а какой у вас цвет кожи, уважаем(ая/ый/ое) яДжон?


 
Anatoly Podgoretsky ©   (2007-02-27 00:23) [18]

> yaJohn  (26.02.2007 11:14:08)  [8]

> Если не считать ответом перемещение топика в раздел "начинающим".

А куда еще, дальше только потрепаться и в корзину, ты какое направление предпочитаешь, справедливый ты наш.

Прав тот, у кого больше прав.


 
yaJohn   (2007-02-27 22:27) [19]

>вообщето в инете это принято...
Видимо мы в разных интернетах. :) У меня все как-раз наоборот....

> Прошу прощения, а какой у вас цвет кожи, уважаем(ая/ый/ое) яДжон?
Не хочется Вас разочаровывать, но цвет кожи у меня вполне обыденный, светлый. Хотите обсудить гендорную принадлежность?

> А куда еще, дальше только потрепаться и в корзину, ты какое направление предпочитаешь, справедливый ты наш.
Мне все равно. Но желательно, конечно, туда где можно получить ответ на поставленный вопрос, а не флейм с претензиями на кладязь вселенской мудрости. Впрочем, лично мне безразличны чужие амбиции, несклоько мешает тот факт, что среди десятка ответов лишь один содержал правильный ответ на поставленный вопрос. От комментариев по поводу сентенций на тему "Править надо такой код нежалеючи" я воздержусь, пожалуй.

> Править надо такой код нежалеючи.
Несомненно. Но и умнее наличие прав само по себе еще никого не делало.

Тема себя исчерпала, думаю, можно удалять топик. Если, конечно, нет желания поговорить о вечных ценностях вообще и доброжелательности к собеседнику в частности, но в соответствующем разделе. :)


 
Аноним   (2007-02-27 23:38) [20]


> Anatoly Podgoretsky ©


Я тоже хочу купить той травы, которую ты куришь


> yaJohn


А той, которую ты куришь, не хочу


 
Anatoly Podgoretsky ©   (2007-02-28 19:32) [21]

> yaJohn  (27.02.2007 22:27:19)  [19]

>> Прошу прощения, а какой у вас цвет кожи, уважаем(ая/ый/ое) яДжон?
>Не хочется Вас разочаровывать, но цвет кожи у меня вполне обыденный, светлый. Хотите обсудить гендорную принадлежность?

Тогда о каких ВЫ можно говорить?


 
Anatoly Podgoretsky ©   (2007-02-28 19:35) [22]

> Аноним  (27.02.2007 23:38:20)  [20]

> Я тоже хочу купить той травы, которую ты куришь

Договоримся.



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

Форум: "Начинающим";
Текущий архив: 2007.03.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.042 c
2-1172231782
rts111
2007-02-23 14:56
2007.03.18
TWordApplication: Как узнать количество страниц в документе?


2-1172063333
vitv
2007-02-21 16:08
2007.03.18
Использование RichEdit


15-1171935130
koha
2007-02-20 04:32
2007.03.18
Нужен ли глухонемым сотовый телефон?


2-1172043399
dimas#
2007-02-21 10:36
2007.03.18
MDI форма


2-1171466891
Анатолиус
2007-02-14 18:28
2007.03.18
dxDBGrid





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