2011-11-29 15 views
12

Sto cercando di caricare un file e cambiare il suo nome qui sotto. Ho bisogno di ottenere l'estensione del file. Il codice sotto ha una sottolineatura sotto "Percorso" mi manca un'istruzione using? O qual è la sintassi corretta per quello che sto facendo?FileUpload get file extension

if (FileUpload1.HasFile) 
try 
{ 
    var FileExtension = Path.GetExtension(FileUpload1.PostedFile.FileName).Substring(1);      

    var newName = DateTime.Now.ToLongDateString(); 
    //Map path to folder 
    string realpath = Server.MapPath("Pictures\\") + Guid.NewGuid() + FileExtension;      

    FileUpload1.SaveAs(realpath); 

    Label1.Text = "File name: " + 
     FileUpload1.PostedFile.FileName + "<br>" + 
     FileUpload1.PostedFile.ContentLength + " kb<br>" + 
     "Content type: " + 
     FileUpload1.PostedFile.ContentType; 
} 
catch (Exception ex) 
{ 
    //Handle the error 
    throw ex; 
} 
else 
{ 
    Label1.Text = "You have not specified a file."; 
} 

risposta

11

"Path" mi manca un'istruzione using?

si deve aggiungere

using System.IO; 

alla lista degli spazi dei nomi

29
FileInfo fi = new FileInfo(fileName); 
string ext = fi.Extension; 
+0

Grazie mille. –

1

Il codice che hai fornito guarda bene (e funziona sulla mia macchina).

L'unica cosa che posso vedere che potrebbe mancare è l'istruzione using per System.IO.