Avatar billede Kim Neesgaard Seniormester
24. september 2005 - 19:05 Der er 5 kommentarer og
1 løsning

Download af data i et datagrid til Word - danske tegn problem

Jeg bruger følgende kode til at 'Open/Save' af data i et datagrid til et Worddokument:

Sub btnDownload_Click(sender As Object, e As EventArgs)

Dim FileName As String

'Overførsel til Word
'Set the content type to Word
FileName = "Test" & ".doc"
Response.ContentType = "application/vnd.ms-word;"
Response.AppendHeader("Content-Disposition", "attachment;filename=" + FileName)

'Turn off the view state
Me.EnableViewState = False

'Remove the charset from the Content-Type header
Response.Charset = String.Empty
Dim myTextWriter As New System.IO.StringWriter()
Dim myHtmlTextWriter As New System.Web.UI.HtmlTextWriter(myTextWriter)

'Get the HTML for the control
DGOrdliste.RenderControl(myHtmlTextWriter)

'Write the HTML to the browser
Response.Write(myTextWriter.ToString())

'End the response
Response.End()

Me.EnableViewState = True

End Sub

Det virker, men æøå vises med forkerte tegn, fx Modsætning, skraldenøgle og HÃ¥ndgribelig både når man åbner i Word og når man gemmer Wordfilen. I datagriddet vises æøå korrekt.
Avatar billede Kim Neesgaard Seniormester
24. september 2005 - 19:06 #1
Jeg har også forsøgt mig med

Response.ContentType = "application/vnd.ms-word;charset=iso-8859-1"

som jeg så et sted, men det virker heller ikke.
Avatar billede arne_v Ekspert
24. september 2005 - 19:13 #2
hvad med

Response.ContentType = "application/vnd.ms-word;charset=utf-8"
Avatar billede Kim Neesgaard Seniormester
25. september 2005 - 09:07 #3
Desværre skriver den stadig forkerte tegn.
Avatar billede thrytter Nybegynder
25. september 2005 - 10:28 #4
Response.ContentType = "application/vnd.ms-excel"
Response.ContentEncoding = System.Text.Encoding.GetEncoding(1252)     
Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlPathEncode("æøåtest.xls"))

plejer at virke ved udskrivning til excel-dokumenter.
Avatar billede Kim Neesgaard Seniormester
25. september 2005 - 12:31 #5
Bingo!! Denne linie gør forskellen:

Response.ContentEncoding = System.Text.Encoding.GetEncoding(1252)

Vil du smide et svar?
Mange tak for hjælpen - det er jo ikke lige en linie, man umiddelbart kommer på!!
Avatar billede thrytter Nybegynder
25. september 2005 - 12:36 #6
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester