Skocz do zawartości

takosamonazwozmieniacz


Rekomendowane odpowiedzi

Kiedyś pisałem na własne potrzeby pewien program.

Dzisiaj - przypomniałem sobie, żeby się was zapytać... czemu nie działa

 

 

Co ten program ma robić?

 

Mamy dwa foldery "FotyWakacje" i "FotyFerie"

 

Zawartość FotyWakacje:

- MPG001.jpg

- MPG002.jpg

- MPG005.jpg

 

Zawartość FotyFerie:

- MPG001.jpg

- MPG008.jpg

- MPG002.jpg

- MPG004.jpg

 

Jak widać są dwa pliki o tych samych nazwach w obu folderach. Założmy że tych zdjęć jest ze sto, i chcę z FotyWakacje przenieść wszystkie foty do FotyFerie. No to będzie "MPGnnn.jpg już istnieje! czy chcesz nadpisać" etc. Musiałbym w takim razie zmieniać mnóstwo razy zmieniać nazwy. Zamiast tego napisałem więc program, który jeżeli widzi że w FotyWakacje jest MPG001.jpg i w FotyFerie też jest MPG001.jpg, ale jest to inne zdjęcie, to zmienia MPG001.jpg z FotyWakacje na 2_MPG001.jpg czy jakos tak i wtedy przenosi bez klopotow. Czaiż?

 

Create:

GML
copdir=get_directory_alt("WSKAŻ FOLDER Z PLIKAMI","");

pasdir=get_directory_alt("WSKAŻ FOLDER WYJŚCIOWY","");

st=1;

while(1)

{

if st=1

{

fnm=file_find_first(copdir,0);

nm=fnm;

i=1;

while(1)

{

if !file_exists(pasdir+"\"+nm)

{

file_copy(copdir+"\"+fnm,pasdir+"\"+nm);

}

i+=1;

nm=string(i)+"_"+fnm;

}

}

else

{

fnm=file_find_next();

if fnm="" break;

nm=fnm;

i=1;

while(1)

{

if !file_exists(pasdir+"\"+nm)

{

file_copy(copdir+"\"+fnm,pasdir+"\"+nm);

}

i+=1;

nm=string(i)+"_"+fnm;

}

}

}

 

I to wszystko.

Co tu jest źle?

Bo efekty działania tego programu są dziwne i różnorodne..

Odnośnik do komentarza
Udostępnij na innych stronach

brakuje kilku else, break, i st+=1.

GML
copdir=get_directory_alt("WSKAŻ FOLDER Z PLIKAMI","");

pasdir=get_directory_alt("WSKAŻ FOLDER WYJŚCIOWY","");

st=1;

while(1)

{

if st=1

{

fnm=file_find_first(copdir,0);

if fnm="" break;

nm=fnm;

i=1;

while(1)

{

if !file_exists(pasdir+"\"+nm)

{

file_copy(copdir+"\"+fnm,pasdir+"\"+nm);

st+=1;

break;

}

else

{

i+=1;

nm=string(i)+"_"+fnm;

file_copy(copdir+"\"+fnm,pasdir+"\"+nm);

st+=1;

break;

}

}

}

else

{

fnm=file_find_next();

if fnm="" break;

nm=fnm;

i=1;

while(1)

{

if !file_exists(pasdir+"\"+nm)

{

file_copy(copdir+"\"+fnm,pasdir+"\"+nm);

break;

}

else

{

i+=1;

nm=string(i)+"_"+fnm;

file_copy(copdir+"\"+fnm,pasdir+"\"+nm);

st+=1;

break;

}

}

}

}

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...