Avatar billede joemoz Nybegynder
27. november 2007 - 09:28 Der er 6 kommentarer og
1 løsning

Specialtegn i dataset

Jeg har et program der genererer et dataset ud fra en kommasepareret fil. Desværre kommer danske tegn (æ,ø og å) ikke rigtigt med i datasettet - står der bare som firkanter. Hvad kan jeg gøre ved det?

Koden ser sådan her ud:

    Public Function datasetfunktion() As System.Data.DataSet
        Dim csvPath As String = "c:\importfil.txt"

        Dim myDataSet As System.Data.DataSet = New System.Data.DataSet()

        Dim myDataTable As System.Data.DataTable = New System.Data.DataTable("DataTabel")

        Dim myDataColumn As System.Data.DataColumn

        ' 1. kolonne
        myDataColumn = New System.Data.DataColumn("KOLONNE1")
        myDataColumn.DataType = System.Type.GetType("System.String")
        myDataTable.Columns.Add(myDataColumn)

        ' 2. kolonne
        myDataColumn = New System.Data.DataColumn("KOLONNE2")
        myDataColumn.DataType = System.Type.GetType("System.String")
        myDataTable.Columns.Add(myDataColumn)

        Using sr As System.IO.StreamReader = New System.IO.StreamReader(csvPath)
            While (Not sr.EndOfStream)
                Dim line As String

                line = sr.ReadLine()
                Dim lineArr As String() = line.Split(",")

                Dim myDataRow As System.Data.DataRow = myDataTable.NewRow()
                myDataRow("KOLONNE1") = lineArr(0)
                myDataRow("KOLONNE2") = lineArr(1)
                myDataTable.Rows.Add(myDataRow)
            End While

        End Using
        myDataSet.Tables.Add(myDataTable)
        datasetfunktion = myDataSet

    End Function
Avatar billede sherlock Nybegynder
27. november 2007 - 09:36 #1
Avatar billede joemoz Nybegynder
27. november 2007 - 10:04 #2
Tak for det, men hvordan skal jeg indsætte 'New system.text.UTF7Encoding' så det fungerer? Hvis jeg indsætter den som

Using sr As System.IO.StreamReader = New System.IO.StreamReader(csvPath), new System.text.UTF7Encoding()

Får jeg at vide at 'keyword is not valid as an identifier og 'Using' resource variable must have an explicit initialization.
Avatar billede sherlock Nybegynder
27. november 2007 - 10:20 #3
Darn.. Jeg er 90% invalid på min VB :)
Avatar billede sherlock Nybegynder
27. november 2007 - 10:21 #4
Men prøv :

Using sr As System.IO.StreamReader = New System.IO.StreamReader(csvPath, new System.text.UTF7Encoding())
Avatar billede joemoz Nybegynder
27. november 2007 - 10:32 #5
Det virkede sgu! Tak og smid lige et svar
Avatar billede sherlock Nybegynder
27. november 2007 - 10:39 #6
:)
Avatar billede arne_v Ekspert
28. november 2007 - 02:07 #7
Jeg skal ikke udelukke at den CSV fil kan være i UTF-7, men jeg betragter det som
værende særdeles sandsynligt at den er i CP-1252 og at den korrekte encoding derfor
er Encoding.Default !
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
Kurser inden for grundlæggende programmering

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