Help CreateDirectory
10 отговора
353 прегледа
Help CreateDirectory
iskam da sazdam direktorija s teku6ta data i ne znam kak da go napravja, taka 4e vseki den da se sazdava nova direktorija s ime na datata.
Blagodarja vi predvaritelno
CreateDirectory('C:/',nil); ne mi var6i rabota.
Blagodarja vi predvaritelno
CreateDirectory('C:/',nil); ne mi var6i rabota.
Re: Help CreateDirectory
Ако това ти свърши работа. Създава директория с текущия ден, месец, година, час, минута, секунда.
function MyCreateDirectory(AStr: string): boolean;
begin
Result:=DirectoryExists(AStr);
if not Result then
begin
Result:=CreateDir(AStr);
if not Result then
raise Exception.Create(
'Не може да създаде директория '+ AStr);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
AStr:String;
begin
AStr:=Format('C:\%s',[FormatDateTime('dd_mm_yyyy_hh_mm_ss',Now)]);
if not MyCreateDirectory(AStr) then
ShowMessage('Error');
end;
function MyCreateDirectory(AStr: string): boolean;
begin
Result:=DirectoryExists(AStr);
if not Result then
begin
Result:=CreateDir(AStr);
if not Result then
raise Exception.Create(
'Не може да създаде директория '+ AStr);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
AStr:String;
begin
AStr:=Format('C:\%s',[FormatDateTime('dd_mm_yyyy_hh_mm_ss',Now)]);
if not MyCreateDirectory(AStr) then
ShowMessage('Error');
end;
Re: Help CreateDirectory
TRN, blagodarja ti, to4no tova mi trjabva6e i si blaskam glavata dva dena .
Veselo izkarvane na praznicite
Veselo izkarvane na praznicite
За пълнота :)
За пълнота прегледай и това:
function ForceDirectories(Dir: string): Boolean;
Предимството е, че по-лесно можеш да си направиш директория за годината с поддиректории за месеците и дните (не се налага да се правят 1000 проверки коя директория същестува).
Весело посрещане на 2006-та!
function ForceDirectories(Dir: string): Boolean;
Предимството е, че по-лесно можеш да си направиш директория за годината с поддиректории за месеците и дните (не се налага да се правят 1000 проверки коя директория същестува).
Весело посрещане на 2006-та!
Re: За пълнота :)
Да. ForceDirectories е по добра, за създаване на всички директории едновременно (CreateDir създава субдиректория, само ако родителската съществува, иначе дава грешка - не може да се зададе C:\dir1\dir2, ако dir1 не съществува), но проверките не се избягват, самата функция ForceDirectories си ги прави.
Re: Help CreateDirectory
Намерих малко по добър начин, предлагам да го разгледате.
Благодарен съм за предложенията ви.
var
A,Y,M,D:String;
begin
A:='Directory';
Y:=Format('%s',[FormatDateTime('yyyy',Now)]);
M:=Format('%s',[FormatDateTime('mm',Now)]);
D:=Format('%s',[FormatDateTime('dd',Now)]);
ForceDirectories('C:\'+A+'\'+Y+'\'+M+'\'+D);
end;
Благодарен съм за предложенията ви.
var
A,Y,M,D:String;
begin
A:='Directory';
Y:=Format('%s',[FormatDateTime('yyyy',Now)]);
M:=Format('%s',[FormatDateTime('mm',Now)]);
D:=Format('%s',[FormatDateTime('dd',Now)]);
ForceDirectories('C:\'+A+'\'+Y+'\'+M+'\'+D);
end;
Re: Help CreateDirectory
Като гледам върши работа, и не, че се заяждам, но теоретически Now се вика 3 пъти и е възможно датата да се смени през това време. Освен това като гледам хелпа е напълно достатъчно само едно извикване на FormatDateTime.
FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', Now + 0.125);
FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', Now + 0.125);
Kyde e razlikata?
Kyde e razlikata?
Format('%s',[FormatDateTime('yyyy\mm\dd',Now)]);
Format('%s',[FormatDateTime('yyyy\mm\dd',Now)]);
Re: за Йордан
Format('%s',[FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', Now + 0.125)]);
и
Format('%s',[FormatDateTime('yyyy\mm\dd',Now)]);
не виждам разликата Now пак е на линия но не се вика по няколко пъти и теоретически защо ако се вика по няколко пъти мога да имам проблем?
и
Format('%s',[FormatDateTime('yyyy\mm\dd',Now)]);
не виждам разликата Now пак е на линия но не се вика по няколко пъти и теоретически защо ако се вика по няколко пъти мога да имам проблем?
Ами защото може да върне разлиано време
Ами защото може да върне разлиано време
Например:
Викаш го за часа и връща 11:59
викаш го за минутите и връща 12:00
и ти извеждаш 11:00
Или обратно, тогава ще изведеш 12:59
А то часа си е 11:59-12:00
Например:
Викаш го за часа и връща 11:59
викаш го за минутите и връща 12:00
и ти извеждаш 11:00
Или обратно, тогава ще изведеш 12:59
А то часа си е 11:59-12:00