Permitindo download de arquivo texto de uma página ASPX
Segue um pequeno exemplo de código Visual Basic .NET que pode ser usado para fornecer ao usuário a possibilidade de fazer o download de um arquivo texto gerado dinamicamente.
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim texto As String
texto = "Este texto será o conteúdo do arquivo que o usuário vai receber via download"
Response.BufferOutput = False
Response.Expires = -1 ' Para o browser não fazer cache do arquivo
Response.Clear()
Response.AppendHeader("content-length", Len(texto))
Response.AppendHeader("Content-Disposition", "attachment; filename=""NOMEDOARQUIVO.txt""")
Response.ContentType = "application/txt"
With New IO.StreamWriter(Response.OutputStream, GetANSIEncoding())
.Write(texto)
.Flush()
End With
Response.End()
End Sub
''' <summary>
''' Retorna o enconding ISO 8859-1
''' </summary>
Public Shared Function GetANSIEncoding() As System.Text.Encoding
Const cEncoding_ISO_8859_1 As Integer = 28591
Return System.Text.Encoding.GetEncoding(cEncoding_ISO_8859_1)
End Function
