RulleRimfrost Skrevet 6. juni 2007 Del Skrevet 6. juni 2007 (endret) Jeg prøver å importere en tekstfil til en DataTable, men får en exeption når den treffer norske tegn i fila. Vet ikke om det er Reader eller DataColumn som ikke takler ÆØÅ, men skulle gjerne fått satt hele greia til unicode. Hvordan kan jeg gjøre det tro ? Dim dtFH As DataTable = New DataTable("ImpFile") dtFH.Columns.Add(New DataColumn("Navn")) ............. Adder alle de andre kolonnene ............. Using Reader As New Microsoft.VisualBasic.FileIO.TextFieldParser(Filename) Reader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.FixedWidth Dim currentRow As String() While Not Reader.EndOfData Try Reader.SetFieldWidths(35, 10, 10, 10) currentRow = Reader.ReadFields() dtFH.Rows.Add(currentRow) Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException MsgBox("Linje " & ex.Message & "kan ikke parse, og hoppes over.") End Try End While End Using Edit: Etter litt feilsøk ser jeg at den rett og slett ikke leser inn tegnene ÆØÅ, men bare fjerner fra importert stream. Feilen kommer siden dette er Fixed width, og påfølgende felter som skal importeres blir forskjøvet. Fårstår ikke Visual Studio 2005 express norsk eller ? Endret 6. juni 2007 av RulleRimfrost Lenke til kommentar
aadnk Skrevet 6. juni 2007 Del Skrevet 6. juni 2007 Jeg vil anta tekstfilene dine er lagret i ANSI-format (med det lokale karatersettet), og ikke UTF8, slik TextFieldParser setter som standard. Sett derfor standard koding til følgende når du initierer tekstleseren: Using Reader As New Microsoft.VisualBasic.FileIO.TextFieldParser("C:\Test.txt", System.Text.Encoding.Default) Lenke til kommentar
RulleRimfrost Skrevet 6. juni 2007 Forfatter Del Skrevet 6. juni 2007 Takker. Det funket selvfølgelig som en kule. Neste spørsmål blir jo da, hvor lang tid tar det før jeg blir så god? Håper vi snakkes når jeg skal begynne på System.Drawing.... Lenke til kommentar
Frysning Skrevet 6. juni 2007 Del Skrevet 6. juni 2007 Les litt på innleggene til aadnk, du vil rask innse at vedkommende har veldig mye erfaring. Erfaring får du ikke av å lese en bok, du må bare drive med det du liker å etterhvert som tiden går blir du dyktig Lenke til kommentar
Manfred Skrevet 13. juni 2007 Del Skrevet 13. juni 2007 Du kan strengt tatt også bruke f.ex: System.Text.Encoding.GetEncoding("iso-8859-1") i stedet for Default. Da VET du at du har med et norsk tegnsett å gjøre Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå