![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Использование текущей даты в имени файла
Gaber © (2002-10-23 15:48:00)Хочу чтоб на диске создавался файл с именем=текущей дате:
n:=DateToStr(now)+".txt";
AssignFile(f,n);
Rewrite(f);
WriteLn(f,+DateTimeToStr(now));
CloseFile(f);
Работает, но если я хочу использовать не просто дату, но и время, меняю
n:=DateTimeToStr(now)+".txt";
На Rewrite программа вылетает?
Anatoly Podgoretsky (2002-10-24 14:48:00) [1]Зачем function FormatDateTime(): string;
Bis (2002-10-24 14:46:00) [2]а он у тебя и так в строковом виде получится )
Gaber (2002-10-24 14:43:00) [3]Подскажите , а как FormatDateTime(), привести к строковому типу.
TTCustomDelphiMaster (2002-10-23 16:55:00) [4]Во первых ":" - не допустимый символ в имени файла
Во вторых при формировании имен используйте функцию FormatDateTime(), т.к. результат других функций зависит от настроек пользователя (год 2 или 4 символа, порядок день месяц год или год месяц день и т.д.).
Anatoly Podgoretsky (2002-10-23 16:52:00) [5]Вылетает потому что используешь недопустимые симаолы в имени файла, аместо DateTimeToStr используй FormatDateTime
Gaber (2002-10-23 16:43:00) [6]Интересно почему так работает:
n:=DateToStr(now)+".txt";
а так нет:
n:=DateTimeToStr(now)+".txt";
Skier (2002-10-23 16:09:00) [7]>Gaber
Дату можно получить через GetSystemTime(...), а
разделитель задать самому...
DieHard (2002-10-23 16:04:00) [8]скорее не точка, а двоеточие
надо переопределить TimeSeparator, а еще лучше заодно и DateSeparator, вдруг он слэш будет у кого-нить
Song (2002-10-23 15:58:00) [9]Может вылетает из-за того, что разделитель - точка? Тогда в таком случае надо использовать FormatDateTime()
А вообще как понять "вылетает". Просто молча или на чего ругается?
Bis (2002-10-23 15:52:00) [10]попробуй не старыми функциями, а которые пришли с Виндой:
FileCreate и т.п.
Старые может быть не поддерживают не досовские имена
Попробуй сначала создать руками, например в том же FAR такое имя