Salve ragazzi,
usando l'esempio di upload file pubblicato su html.it (http://asp.html.it/articoli/leggi/695/upload-di-file/), vorrei sapere come modificare il nome del file prima di "scriverlo" sul server.
Ho provato in questo modo, ma non funziona, non mi restitiusce niente:
codice:
percorso = "../../images/products/temp/"
ByteRicevuti = Request.TotalBytes
if ByteRicevuti > 0 then
DatiRicevuti = Request.BinaryRead(ByteRicevuti)
FileBinario = RSBinaryToString(DatiRicevuti)
FirmaFile = left(FileBinario,instr(FileBinario,"" & vbCrLf)-1)
ArrPezzi = split(FileBinario,FirmaFile)
for item = 1 to ubound(ArrPezzi)-1
Inizio = instr(ArrPezzi(item),"" & vbCrLf & "" & vbCrLf)
Intestazione = left(ArrPezzi(item),Inizio-1)
Inizio = Inizio + len("" & vbCrLf) + len("" & vbCrLf)
ContenutoFile = mid(ArrPezzi(item),Inizio,len(ArrPezzi(item))-Inizio-1)
' Recupero i campi se sono compilati
if instr(Intestazione,"id") > 0 then
id = ContenutoFile
end if
if instr(Intestazione,"code") > 0 then
code = ContenutoFile
end if
' Qui recupero il file da uploadare (se presente) e lo scrivo
' sul server
'FILE 1
if instr(Intestazione,"img") > 0 then
i = instr(Intestazione,"filename=")
j = instr(i + 10,Intestazione,chr(34))
NomeUpload = mid(Intestazione,i + 10,j-i-10)
i = instrRev(NomeUpload,"\")
if i<>0 then
NomeFile = mid(NomeUpload,i + 1)
else
NomeFile = NomeUpload
end if
if i<>0 then
Set FSO = CreateObject("Scripting.FileSystemObject")
Upload1 = True
DimensioneFile1 = len(ContenutoFile)
EstensioneFile1 = right(ContenutoFile,3)
NomeFile1 = code & right(NomeUpload,4)
Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile1), True, False)
textStream.Write ContenutoFile
textStream.Close
Set textStream = Nothing
Set FSO = Nothing
end if
end if
next
End If
In questa riga (NomeFile1 = code & right(NomeUpload,4) ) dovrebbe rinominare il file, solo che la variabile code non viene recuperata ed usata per formare il nome delfile.
Il problema potrebbe essere il fatto che la variabile è in formato binario?
Se sì, come ovviare?
Grazie