Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2012, 14:17   #1
lu_una
Пользователь
 
Регистрация: 07.11.2012
Сообщений: 84
Вопрос Функция Now

Добрый день!
В программе функцией now записывается в базу дату открытия файла. Время на компьютере то в виде дд.мм.гггг

Появилась проблема, на одном компьютере говорят системные настройки.. и в общем дата отображается дд/мм/гггг

И у этого пользователя документ не помечается прочитанным, дата не записывается. Что сделать с датой?!
lu_una вне форума Ответить с цитированием
Старый 19.12.2012, 14:27   #2
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Кольша вне форума Ответить с цитированием
Старый 19.12.2012, 14:33   #3
tsar_
Форумчанин
 
Аватар для tsar_
 
Регистрация: 06.01.2011
Сообщений: 369
По умолчанию

Возможно функция FormatDateTime поможет. У нее много настроек форматирования.
Начать можно отсюда

З.Ы. Кольша обогнал)
Программирую по необходимости
tsar_ вне форума Ответить с цитированием
Старый 19.12.2012, 14:35   #4
lu_una
Пользователь
 
Регистрация: 07.11.2012
Сообщений: 84
По умолчанию

Спасибо!) Пошла по ссылке!)
lu_una вне форума Ответить с цитированием
Старый 20.12.2012, 07:01   #5
lu_una
Пользователь
 
Регистрация: 07.11.2012
Сообщений: 84
По умолчанию

FormatDateTime -ок.
Хочу со слешами, так надо
Код:
ShowMessage(FormatDateTime('ddddd', now));
??
Все равно с точками
lu_una вне форума Ответить с цитированием
Старый 20.12.2012, 08:29   #6
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

Существует глобальная переменная DateSeparator: Char, но её использование не Thread-safe, по понятным причинам глобальности.
А есть нормальный способ через TFormatSettings, который видно сразу, когда _открываете справку_ по FormatDateTime.
Код:
var
  fs: TFormatSettings;
begin 
  GetLocaleFormatSettings(fs);
  fs.DateSeparator := '/'; 
  FormatDateTime('ddddd', now, fs);
phomm вне форума Ответить с цитированием
Старый 20.12.2012, 08:33   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от lu_una
Хочу со слешами, так надо
да хоть через запятые!

Так?
Код:
ShowMessage( FormatDateTime('dd/mm/yyyy', now));
Serge_Bliznykov вне форума Ответить с цитированием
Старый 20.12.2012, 08:38   #8
lu_una
Пользователь
 
Регистрация: 07.11.2012
Сообщений: 84
По умолчанию

А вот как будто я так не пробовала)) ShowMessage( FormatDateTime('dd/mm/yyyy', now));
все равно с точками!!
На GetLocaleFormatSettings(fs); ругается -не запускается..
lu_una вне форума Ответить с цитированием
Старый 20.12.2012, 11:08   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

да, Вы правы, есть такой косячок-с...

Объясню, почему я сразу его не заметил: я проверил (ошибочно с FormatDateTime('dd\mm\yyyy', а когда вставлял на форум, увидел, что слеши не в ту сторону. исправил, наивно полагая, что функции ВСЁ РАВНО, какие символы выводить (кстати, кроме слеша, это действительно так. попробуйте, пробелы или те же запятые!!)

ладно. на каждую хитрую функцию найдётся своя хитрость.

пробуйте так:
Код:
  ShowMessage( StringReplace( FormatDateTime('dd.mm.yyyy', now), '.','/',[rfReplaceAll]));
Serge_Bliznykov вне форума Ответить с цитированием
Старый 20.12.2012, 11:22   #10
lu_una
Пользователь
 
Регистрация: 07.11.2012
Сообщений: 84
По умолчанию

Отлично, так сработало а дату с измененным форматом можно записать в переменную??
хотела в переменную типа TDateTime

Последний раз редактировалось lu_una; 20.12.2012 в 11:25.
lu_una вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ Функция Andreima Помощь студентам 0 05.06.2012 20:05
Функция KuckaMAXHATKA Общие вопросы C/C++ 1 22.02.2011 01:00
Функция в VB asd48 Помощь студентам 1 25.12.2008 23:29
Функция asd48 Помощь студентам 2 21.12.2008 17:17
одна функция потока, а другая функция - член класса запускающего этот поток Дмитрий_Ч Общие вопросы C/C++ 2 27.09.2007 08:50