Newsgroup: it.comp.lang.visual-basic
Titolo: Rinominare un file se gia' esiste

Dunque il mio problema è questo:
Devo scrivere una parte di codice che controlli se esiste o meno un file
(es. pippo.bmp) dentro una certa cartella...
Dunque le istruzioni prima non fanno altro che copiare il file da una parte
all'altra!!!
Ora ho un problema... Se il file pippo.bmp gia' esiste allora lo devo
rinominare in pippo000.bmp e se esiste pure pippo000.bmp lo rinomino in
pippo001.bmp ecc...
La mia domanda è questa... Come faccio a controllare se il file gia'
esiste???E ancora non meno importante se esiste come lo rinomino
progressivamente in modo che faccia il giochino dei numeri???
P.S Dimenticavo che l'estensione non è solo bmp ma anche altro... che ne
pensate si puo' fare???
E come caspita se fa?
1000GRAZIE!!!

 ha scritto nel messaggio
news:jw4s7.1252$_42....@news.infostrada.it...


 > progressivamente in modo che faccia il giochino dei numeri???
Mmmmm...mi viene in mente questo
tmpfilename( )=Split(filename, ".")
così trovi due sottostringhe che sono il nome e l'estensione
poi se già esiste lo rinomini:
fai tmpfilename2=tmpfilename(1) & numero
Più in generale che devi fare:
controlli se il file esiste
se esiste:
ne dividi il nome in due sottostringhe
prendi la prima sottostringa e con un ciclo ci aggiungi la variabile stringa
numero che puoi impostare per partire da 0000 fino a che ti pare sempre
facendo un controllo, 
ad.es
.:
If Right(tmpfilename2 ,4) = Right(nome_file_che_esiste,4) Then
'Esiste già un file con quel numero finale
    numero=numero + 1
    tmpfilename2=Right(tmpfilename2)
    tmpfilename2=tmpfilename2 & numero
ecc...ecc....spero siano chiare queste ultime istruzioni
Grazie alla funzione split l'estensione non importa
P.S. Io sono solo uno studentello, prendi quello che ti ho detto con le
molle. Anzi sarei grato agli esperti del NG se correggessero eventualmente
ciò che ho detto e suggerissero miglioramenti e/o correzzioni.
Ciao, e buon lavoro.

così trovi due sottostringhe che sono il nome e l'estensione
Non sara' il caso di Francy, ma i file possono benissimo
chiamarsi "miofile.zip.old.1.0.4" oppure "miofile"
quindi non e' detto che l' array abbia due elementi:
meglio verificare l' indice piu' alto con UBound.
Stesso discorso per la lunghezza dell' estensione:
non e' detto che abbia tre caratteri, ad esempio:
.jpeg, .mpeg, .html, .shtml, .ps, .js, .db, .z, ...
Con la funzione Len applicata all' ultimo
elemento dell' array va a leggersi l' effettiva
lunghezza dell' estensione (se c'e').
ciao, hal

 .jpeg, .mpeg, .html, .shtml, .ps, .js, .db, .z, ...
...java...
me ne ero accorto in clipper. dos-samente pensavo a 3, e mi sono trovato una
serie di record con ".cla" :)



Grazie HAL, era proprio ciň che volevo sentirmi dire. Tuttavia il mio
codice, o meglio la mia idea, era buona?
Grazie ancora.

codice, o meglio la mia idea, era buona?
Direi di si', io mi sono limitato a ricamarla ;-)
ciao, hal

 HAL e' parente di IBM con lo scarto di una lettera :-P
Il "famoso" algoritmo Clarke, detto anche ROT1 :-)
Bye, G.

 Il "famoso" algoritmo Clarke, detto anche ROT1 :-)
il che apre lo spinoso problema dell'algoritmo ROTFL

 il che apre lo spinoso problema dell'algoritmo ROTFL
Hai ragione, non c'è rotfl senza spine...
Bye, G.


Mentre hal (lowercase) č parente di Kubrick?
hal1961 "odissea nell'ospizio" ???   (mi piace sempre trovare gente piů
"vecchia" di me...)
:-PPPPP
ciao
ugo

"Paperino" <non...@lo.dico> ha scritto

toh! da noi si dice: non c'e' rotw senza canini...

"vecchia" di me...)
Ti si possano corrompere i 17 (o 34) cluster in cui giace hal.dll sul tuo NT :-PPP
ciao, hal


Niente da fare... sono a casa e qui ho w95....   :-PPPPPPPPPPPPPPPPP
ciao
ugo