AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi aus ms access db im utf-8 format einlesen
Thema durchsuchen
Ansicht
Themen-Optionen

aus ms access db im utf-8 format einlesen

Ein Thema von matei · begonnen am 17. Mai 2005 · letzter Beitrag vom 19. Mai 2005
Antwort Antwort
Seite 2 von 2     12   
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#11

Re: aus ms access db im utf-8 format einlesen

  Alt 18. Mai 2005, 13:52
Man muss richtig casten, dann klappt es mit den WideStrings.
Delphi-Quellcode:
var
   f : TField;
....
while not ADOTable1.eof do
    begin

      child:= doc.createElement('Records');
      root.appendchild(child);
      for i:=0 to ADOTable1.FieldCount-1 do
      begin
        // erst mal das aktuelle Feld in Variable merken
        f := ADOTable1.Fields[i];

        child1:=doc.createElement(f.FieldName);
        child.appendchild(child1);

        // prüfe, ob der Inhalt (NULL) ist
        if f.IsNull then
            temp := '(NULL)'

        // Sonderbehandlung für WideStringfelder
        // nur mit dem Cast kommt man an das Property Value vom Typ WideString ran
        // (evtl. ginge es auch über .AsVariant)
        // .AsString geht definitiv nicht, da .AsString immer einen Ansistring liefert
        else if f is TWideStringField then
            temp := TWideStringField(f).Value // property Value: WideString
        else
            temp := f.AsString; // für numerische Felder, usw.
       
       child1.appendChild(doc.createTextNode(UTF8encode(temp)));
      end;
    ADOTable1.Next;
    end;
Andreas
  Mit Zitat antworten Zitat
matei

Registriert seit: 29. Apr 2005
Ort: Regensburg
7 Beiträge
 
Delphi 7 Professional
 
#12

Re: aus ms access db im utf-8 format einlesen

  Alt 19. Mai 2005, 14:33
danke für die zahlreichen tipps, aber delphi7 reicht für das problem leider nicht aus

da nützen auch die vielen gut gemeinten casts nix!

it's time for a change ... >delphi7
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#13

Re: aus ms access db im utf-8 format einlesen

  Alt 19. Mai 2005, 14:54
Zitat von matei:
danke für die zahlreichen tipps, aber delphi7 reicht für das problem leider nicht aus
Ich hab D6 und ich kann 100% Unicode

Evtl. noch folgende Patches in der adodb.pas nötig (jedenfalls bei D6 nötig).

Zeile 1060:

adLongVarBinary, adLongVarBinary, adEmpty, adChar, adChar, adBigInt,
nach
adLongVarBinary, adLongVarBinary, adEmpty, adChar, adVarWChar, adBigInt,

Zeile 1178:

ftString, ftWideString: Result := adVarChar;
nach
ftString: Result := adVarChar;
ftWideString: Result := adVarWChar;
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz