3.939 messaggi dal 28 gennaio 2003
Dim buffer As Byte() = System.Text.Encoding.UTF8.GetBytes(sb.ToString)

' imposta le headers
Response.Clear()
Response.AddHeader("Content-Disposition", "attachment; filename=""" & "prova.csv" & """")
Response.AddHeader("Content-Length", buffer.Length.ToString)
Response.ContentType = "application/octet-stream"
Response.ContentEncoding = System.Text.Encoding.UTF8

Me.Response.OutputStream.Write(buffer, 0, buffer.Length)

Response.End()


Facevo delle prove. Leggo da tabella access e popolo uno stringbuilder tramite un DataReader. Ho notato che le lettere accentate non vengono rese.
Per esempio, è viene reso con è

Mi dareste una mano?
3.939 messaggi dal 28 gennaio 2003
Uhm! non serve più! un mio stupidissimo errore
22 messaggi dal 01 dicembre 2004
Ciao,
io ho il tuo stesso problema, ovvero quello dei caratteri accentati: come lo hai risolto??

Grazie, Fabio
3.939 messaggi dal 28 gennaio 2003
Come ho risolto? usando Encoding.UTF8 conviene salvare il file delimitato con estensione .txt. Le lettere accentate sono riportate fedelmente. E si può aprire tranquillamente con Excel o Open Office.

Se si usa l'estensione .csv ho notato che bisogna usare Encoding.Default. In questo caso Excel apre bene il file, ma io non mi fido. Preferisco la prima soluzione.
Modificato da pietro09 il 12 ottobre 2009 19.44 -

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.