Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Изменение имя файла

2.1K
31 октября 2007 года
FreeWay
142 / / 03.05.2007
Привет всем!!
Такая задачка, необходимо копировать фаил, затем менять его имя на дату и время, дату получается, а если еще время втулить, то он вообще не переименуется. Код:

TDateTime Today;
Word Year, Month, Day ;
String date= DateTimeToStr(Now());
String time= TimeToStr(Now());

CopyFile("BASE.mdb","d://Backup//BASE.mdb",false);
RenameFile("d:\\Backup\\BASE.mdb","d:\\Backup\\BASE_"+date+".mdb");
//таким кодом получается почти то что надо - BASE_31.10.2007.mdb

а вот таким:
CopyFile("BASE.mdb","d://Backup//BASE.mdb",false);
RenameFile("d:\\Backup\\BASE.mdb","d:\\Backup\\BASE_"+date+"_"+time+".mdb");///получается - BASE.mdb
переменную проверял, содержит время, отчегоже не фурычит????
276
31 октября 2007 года
Rebbit
1.1K / / 01.08.2005
Подозреваю что переменная time содержыт символы недопутимые в имени файла.
2.1K
31 октября 2007 года
FreeWay
142 / / 03.05.2007
Цитата: Rebbit
Подозреваю что переменная time содержыт символы недопутимые в имени файла.



блин внатуре((((
а как же выкрутится, подозреваю как то отформатировать время, без разделителей можно, но как сие сделать ?????

276
31 октября 2007 года
Rebbit
1.1K / / 01.08.2005
Цитата: FreeWay
блин внатуре((((
а как же выкрутится, подозреваю как то отформатировать время, без разделителей можно, но как сие сделать ?????


:) А что мешает просто заменить в строчке двоеточия какимто подчеркиванием ? Кстати с точками в дате я бы тоже советовал ето сделать.

2.1K
31 октября 2007 года
FreeWay
142 / / 03.05.2007
Цитата: Rebbit
:) А что мешает просто заменить в строчке двоеточия какимто подчеркиванием ? Кстати с точками в дате я бы тоже советовал ето сделать.



а пример можешь кинуть как замену такую сделать, мне со строками не приходилось сталкиваться, тут я понимаю надо будет перебрать каждый символ и при двоеточии подменять его. Но должен быть какой то более простой выход.

490
31 октября 2007 года
frid-karatel
357 / / 15.09.2007
Цитата:
String date= DateTimeToStr(Now());



используй параметр, в котором модно задать форматирование времени:
AnsiString buff;
DateTimeToString(buff, "hh.mm.ss", Now());
в данном случае у тебя в переменной будет содержаться "03.49.57"

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог