2010-06-21 3 views
8

Ist es möglich, die Datei beim Herunterladen umzubenennen? Zum Beispiel möchte ich Dateien in Ordnern mit ihren IDs speichern, aber wenn Benutzer Datei herunterlädt, möchte ich den ursprünglichen Dateinamen zurückgeben.C# Datei dynamisch nach Download-Anforderung umbenennen

+1

Kannst du ein bisschen mehr geben? insbesondere, wie werden die Dateien auf den Client heruntergeladen? – CodingGorilla

+1

Sie müssen eine * Menge * mehr Informationen hier angeben. Was lädt die Datei und von was? Wo passt dein Code? –

+0

Sie müssten ein Geschäft mit dem ursprünglichen Namen haben. – ChrisF

Antwort

11

nur Name der Datei ändern über

Response.AppendHeader("Content-Disposition","attachment; filename=LeftCorner.jpg"); 

zum Beispiel

string filename = "orignal file name.ext"; 
Response.AppendHeader("Content-Disposition","attachment; filename="+ filename +""); 

Downloading a File with a Save As Dialog in ASP.NET

+0

Wie soll ein Download stattfinden? Ich folge dir nicht ... –

+0

überprüfe den eingefügten Link in der Antwort –

+0

funktioniert das mit allen Dateitypen (.zip, rar, pdf, etc)? –

1

nombre = nombre del archivo + Erweiterung (ejemplo.txt)

public void DownloadFile(string ubicacion, string nombre) 
{ 
     Response.Clear(); 
     Response.ContentType = @"application\octet-stream"; 
     System.IO.FileInfo file = new System.IO.FileInfo(ubicacion); 
     Response.AddHeader("Content-Disposition", "attachment; filename=" + nombre); 
     Response.AddHeader("Content-Length", file.Length.ToString()); 
     Response.ContentType = "application/octet-stream"; 
     Response.WriteFile(file.FullName); 
     Response.Flush(); 
} 
+1

Bitte fügen Sie einige Kommentare hinzu, die beschreiben, was Ihr Code tut; und bitte benutze Englisch. Freundliche Grüße. – YakovL