Moin moin!
Ich möchte euch heute meine erste gern genutzte Funktion zum Thema "Wie erstelle ich dynamisch Dateien und lasse Sie dem Benutzer herunterladen?" vorstellen.
Da man ja immer wieder in Foren lesen kann, wie man quasi einen dynamischen Datei-Download in ASP.NET programmiert, habe ich mir eine Methode geschrieben, die dies ganz einfach löst.
Quellcode anzeigen
public void Write()
{
System.Web.HttpResponse response = InitFile(FileType.CSV, "Auswertung");
StringBuilder strBuilder = new StringBuilder();
strBuilder.Append("Erste Zeile - Erste Spalte;Erste Zeile - Zweite Spalte\n");
strBuilder.Append("Zweite Zeile - Erste Spalte;Zweite Zeile - Zweite Spalte");
response.Write(strBuilder.ToString());
response.End();
}
public HttpResponse InitFile(FileType fileType, string filename)
{
HttpResponse response = HttpContext.Current.Response;
response.Clear();
response.Buffer = true;
switch (fileType)
{
case FileType.CSV:
response.ContentType = "text/csv";
filename += ".csv";
break;
case FileType.TXT:
response.ContentType = "application/vnd.text";
filename += ".txt";
break;
}
response.AppendHeader("content-disposition", "attachment; filename=" + filename.Replace(" ", ""));
response.ContentEncoding = System.Text.Encoding.Default;
response.HeaderEncoding = System.Text.Encoding.Default;
return response;
}
public enum FileType
{
CSV = 0,
TXT = 1
}
Bis denne, Chris
Keine Kommentare:
Kommentar veröffentlichen