PDA

View Full Version : Rinominare file


zaf78
02-08-2007, 09:24
Buongiorno a tutti,
ho un piccolo problema, e spero che qualche anima pia mi possa dare una manina:
avrei bisogno di creare uno script sotto windows 2000, che automaticamente quando lo lancio mi rinomini un file, aggiungendo data e ora; faccio un esempio:
file.zip ---> file0208070900.zip
A tale scopo ho creato il seguente script:
ren file.zip file%date%%time%.zip
Solo che il problema è che windows come data usa il fomrato "gio ggmmaa" e come ora "mm.hh ss", quindi quando vado a eseguire il file bat mi da errore di sintassi. Ho provato a cambiare le impostazioni internazionali, ma nulla, perchè nel formato data il giorno rimane sempre staccato dalla data, così come i secondi sono staccati dall'ora.
Qualcuno sa darmi una mano

Grazie mille a tutti
Zaf

Luc72
02-08-2007, 10:29
Serviva anche a me un utility del genere, all'inizio avevo provato con un file bat, ma tra un problema e l'altro ho risolto scrivendo un programmino in vb.net, se ti interessa posto il codice. Lo devi solo adattare alle tue esigenze, a me serviva rinominare una directory aggiungendo data e ora.

zaf78
02-08-2007, 12:20
Saresti gentilissimo se mi daresti il codice.

Grazie mille veramente

Luc72
02-08-2007, 15:41
al posto di directory. devi usare file.

Try
Dim tmp_S As String
Dim tmp_D As String

tmp_S = Microsoft.VisualBasic.Command

If tmp_S = "" Then
MessageBox.Show("Specify the directory")
Application.Exit()
End If

tmp_D = Date.Now.Year & Strings.Right("0" & Date.Now.Month, 2) & _
Strings.Right("0" & Date.Now.Day, 2) & _
"_" & Strings.Right("0" & Date.Now.Hour, 2) & _
Strings.Right("0" & Date.Now.Minute, 2) & _
Strings.Right("0" & Date.Now.Second, 2)

If Directory.Exists(tmp_S) Then
Directory.Move(tmp_S, tmp_S & "_" & tmp_D)
End If

Application.Exit()

Catch ex As Exception
MessageBox.Show(ex.Message, "RenDate - ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)

End Try