Einzelnen Beitrag anzeigen

sancho1980

Registriert seit: 7. Feb 2006
429 Beiträge
 
#1

unicode_fss utf8 firebird: eigene sortierreihenfolge

  Alt 12. Aug 2006, 21:22
Datenbank: firebird • Version: 1.5 • Zugriff über: fibplus
hi,
ich hab vor, ein tool zu schreiben, dass folgendes tut:

-user gibt in ein unicode-fähiges (tntcontrols) memo zeichenketten in gewünschter reihenfolge ein

also, z.B. (hier spanische Sortierreihenfolge):

...
1
...
9
A
a
B
b
C
c
CH
Ch
ch
D
d
...
Z
z
...

-zeichen werden dann genau so wie im memo in text-datei gespeichert, allerdings, nachdem die einzelnen Zeilen vorher von WideString in UTF8String umgewandelt wurden

-diese datei wird dann später von einem anderen tool eingelesen (das muss dann noch geschrieben werden; wen's interessiert: Custom Collation), welches daraus eine Sortierreihenfolge-Treiber für fb-charset UNICODE_FSS (soweit ich informiert bin ist das UTF8) generiert

bei diesem 2. tool bekomm ich hilfe, nur muss ich vorher schon mal das prog schreiben, dass diese strings aus dem memo utf8-konvertiert in die textdatei schreibt; jetzt wundert mich folgendes, angenommen ich mache folgendes

Delphi-Quellcode:
var
  s: WideString;
  w: TWriter;
  fs: TFileStream;
...
begin
  ...
  fs := TFileStream.Create('textdatei.txt', fmCreate);
  w := TWriter.Create(fs, 1024);
  
  s := 'w';
  w.WriteString(UTF8Encode(s));
  ...
end;
wenn ich jetzt textdatei.txt mit dem editor öffne und bei Codierung UTF-8 angebe, dann müsste ich doch einfach mal das 'w' zu sehen bekommen, statt dessen aber seh ich [kästchen][kästchen]w...für mich ein zeichen, dass irgendwas nicht stimmt, oder?

mach ich irgendwas grundsätzlich falsch?

danke,

martin
Um Rekursion zu verstehen, muss man zunächst Rekursion verstehen.
  Mit Zitat antworten Zitat