Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 07.04.2011, 00:15
DNew DNew вне форума
Прохожий
 
Регистрация: 07.04.2011
Сообщения: 6
Репутация: 10
По умолчанию TDateTime учет региональных настроек

Здравствуйте!
У меня есть вопрос. Я сохраняю в ini файле время последней загрузки программы. в файл пишу с помощью функции datetimetostr. Работает это при региональных настройках России. Получается примерно так - 22.11.00 06.04.2011 (6 апреля 2011 года). Считываю дату StrToDateTime.
При региональных настройках США месяц и день меняется местами и тогда получается при считывании даты неверное принятие программой времени (т.е. 4 июня 2011 года). Как обойти эту проблему. Так же в некоторых языках дата пишется в формате 06.04.2011 г. (т.е. с буквой в конце). Как это обойти при считывании даты, а то выдается сообщение об ошибке при считывании из ини файла, что это не формат datetime.
Заранее спасибо.
Ответить с цитированием
  #2  
Старый 07.04.2011, 00:25
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

А хранить дату-время в виде числа с плавающей точкой никак не вариант?
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #3  
Старый 07.04.2011, 00:27
DNew DNew вне форума
Прохожий
 
Регистрация: 07.04.2011
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от DJ PhoeniX
А хранить дату-время в виде числа с плавающей точкой никак не вариант?
А можно подробнее? И как потом сравнивать?
Ответить с цитированием
  #4  
Старый 07.04.2011, 00:31
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Куда уж подробнее... TDateTime, если не ошибаюсь, является "наследником" то ли Real, то ли Double, это не суть. В INI это пишется WriteFloat, читается ReadFloat, напрямую и без преобразований. Сравнивать предельно просто - как любые другие числа. Вопрос в том, нужна ли "пользовательская" читабельность самого INI. Если нет - данный метод прекрасно подходит.
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #5  
Старый 07.04.2011, 00:36
DNew DNew вне форума
Прохожий
 
Регистрация: 07.04.2011
Сообщения: 6
Репутация: 10
По умолчанию

Пользователю не нужно в ини лезть. Мне главное что бы прога смогла понять из ини файла какой последнее время запуска было ну и вывести его в лайбл только в читабельном формате (учитывая региональные настройки). С этим способм это получится? (пока нет возможности проверить на делфи). Т.е. можно ли будет конвертировать данные из float в datetime?
Ответить с цитированием
  #6  
Старый 07.04.2011, 00:38
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Так конвертировать ничего и не придётся - преобразований никаких не надо, так как TDateTime и является (в понимании Delphi) числом с плавающей точкой (тот самый Float). Я пользовался этим методом, и со 100% уверенностью говорю - метод работает.
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:45.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter