![]() |
Umlaute werden aus DBase-DB falsch ausgelesen
hallo,
ich stelle über ttable und tdatasource verbindungen zu dbase-dbs her und egal ob ich die felder auf einem dbedit oder einen dbgrid ausgebe, die umlaute werde immer ungefähr so dargestellt || woran kann das liegen? wenn ich die db mit excel öffne, wird alles richtig angezeigt. danke gruß tkliewe |
Re: Umlaute werden aus DBase-DB falsch ausgelesen
Such mal nach einer Eigenschaft in der du die Zeichetabelle Festlegen kannst.
Beim Connection-Object oder der Enviroment. |
Re: Umlaute werden aus DBase-DB falsch ausgelesen
Wenn Du aufgepasst hättest, dann hättest Du diesen Thread bemerken müssen:
![]() |
Re: Umlaute werden aus DBase-DB falsch ausgelesen
hallo,
also so richtig hilft mir das nicht weiter. ich hab jetzt schon fast alle einstellungen in der bde-verwaltung durch und immer noch keine umlaute. kennt jemand nicht die genaue einstellung. also ich hab bei dbases unter langdriver halt die sachen mit "deu" ausprobiert. danke gruß tkliewe |
Re: Umlaute werden aus DBase-DB falsch ausgelesen
Sind das bestehend DBase-Tabellen ?
Wenn ja, welche Version, welche Indexdateien? Noch unter DOS erzeugt ? Ist ja möglich daß dein Problem eine nicht bestehende Ascii - Ansi - Konvertierung ist. Karsten |
Re: Umlaute werden aus DBase-DB falsch ausgelesen
hallo,
also es handelt sich um bereits bestehende dbase-tabellen. wann und wie die erzeugt wurden kann ich leider nicht sagen, weil ich es nicht selbst gemacht habe. index-dateien habe ich keine dabei. also bei mir liegen nur die dbf-dateien. daran dürfte es ja auch nicht liegen, da excel sie ja richtig ausliest oder sehe ich das falsch? danke schonmal mfg tkliewe |
Re: Umlaute werden aus DBase-DB falsch ausgelesen
Hallo
ich kenne das Problem vom Übertragen der Datenbanken von dBase nach Paradox. Beim Kopieren Zeichenketten testen und wandeln mit:
Code:
Anwendung:
{ASCII zu ANSI}
function KorrUml1(sa:string):string; var s : string; j : integer; b : byte; begin s:=''; for j:=1 to length(sa) do begin b := ord(sa[j]); case b of {ASCII ANSI } $82: s:=s + chr($E9); //é; //$??: s:=s + chr($E8); //è $84: s:=s + chr($E4); {ä} $94: s:=s + chr($F6); {ö} $81: s:=s + chr($FC); {ü} $E1: s:=s + chr($DF); {ß} $8E: s:=s + chr($C4); {Ä} $99: s:=s + chr($D6); {Ö} $9A: s:=s + chr($DC); {Ü 220 = Alt-154} $F8: s:=s + chr($B0); {° 186 = Alt-248} $9B: s:=s + chr($F8); {ø 248 = Alt-155} $AB: s:=s + chr($BD); {½ 189 = Alt-171} $AC: s:=s + chr($BC); {¼ 188 = Alt-172} $5F: s:=s + chr($80); {€ 128 = Alt-95 hat nicht fkt.} else s := s + sa[j]; end; end; Result := s; end;
Code:
hat das Problem gelöst.
....
Tab1.First; while not Tab1.Eof do begin for i := 0 to Tab1.FieldCount - 1 do begin if Tab1.FieldDefs.Items[i].DataType = ftString then begin fld := Tab1.FieldDefs.Items[i].Name; s := Tab1.FieldByName(fld).AsString; s := KorrUml1(s); Tab1.Edit; Tab1.FieldByName(fld).AsString := s; end; end; Tab1.Next; end; Tab1.First; .... mfg eddy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz