AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Code Page-Name zu Identifier

Ein Thema von xaromz · begonnen am 28. Jun 2007 · letzter Beitrag vom 18. Jan 2008
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.155 Beiträge
 
Delphi 12 Athens
 
#11

Re: Code Page-Name zu Identifier

  Alt 17. Jan 2008, 17:54
Zitat:
CPInfoEx ist in Delphi nicht definiert
hatte ich gemerkt und ein erster schneller Versuch mit EnumSystemCodePages liefert einfach immer nur eine einzige "10000"

Delphi-Quellcode:
Function EnumCodePagesProc(CodePageString: PChar): LongBool; StdCall;
  Begin
    Form1.Memo1.Lines.Add(CodePageString);
    Result := True;
  End;

Procedure TForm1.FormCreate(Sender: TObject);
  Begin
    EnumSystemCodePages(@EnumCodePagesProc, CP_SUPPORTED);
  End;
[Edit] hmm ... LongBool-True ($ffffffff) wird wohl nicht so bekocht wie LongWord(1)

Bollean-True(1) ist ja leider zu kurz

und dabei steht doch was von Boolean im PSDK



nur leider sind die CodePage-Namen etwas blöd ... nett lokalisiert, was ein prüfen auf bestimmte Namen ungünstig macht

Zitat:
21866 = "21866 (Ukrainisch - KOI8-U)"
28591 = "28591 (ISO 8859-1 Lateinisch I)"
28592 = "28592 (ISO 8859-2 Mitteleuropa)"
und "ISO 8859-1" <> "ISO-8859-1"
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Code Page-Name zu Identifier

  Alt 17. Jan 2008, 18:22
Zitat von himitsu:
Zitat:
CPInfoEx ist in Delphi nicht definiert
hatte ich gemerkt und ein erster schneller Versuch mit EnumSystemCodePages liefert einfach immer nur eine einzige "10000"
Das lag daran, dass ja die Funktion einen Pointer auf eine CPInofEx-Struktur empfängt
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.155 Beiträge
 
Delphi 12 Athens
 
#13

Re: Code Page-Name zu Identifier

  Alt 17. Jan 2008, 18:55
Zitat von Union:
Zitat von himitsu:
Zitat:
CPInfoEx ist in Delphi nicht definiert
hatte ich gemerkt und ein erster schneller Versuch mit EnumSystemCodePages liefert einfach immer nur eine einzige "10000"
Das lag daran, dass ja die Funktion einen Pointer auf eine CPInofEx-Struktur empfängt
nee nee, LongBool (laut PSDK) auch in LongWord geändert und schon geht's.

bleibt aber dennoch das Problem mit der Stringerkennung.

also ich bekomm z.B. eine Datei und in der ist z.B. "ISO-8859-1" zu finden,
jetzt müßte ich das für eine Weitere Verarbeitung in Unicode umwandeln, da mein Programm damit arbeitet.

aber der String "ISO-8859-1" ist nirgends in de Liste zu finden
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#14

Re: Code Page-Name zu Identifier

  Alt 17. Jan 2008, 21:23
Also mit dem oben geposteten Code geht es definitiv, ich mache im FormCreate folgendes:
GetCodePageList(cbxCpExt.Properties.Items); Und das ist das Ergebnis:
http://softwareunion.lu/images/CodepageCombobox.png
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.155 Beiträge
 
Delphi 12 Athens
 
#15

Re: Code Page-Name zu Identifier

  Alt 17. Jan 2008, 21:42
klar geht der Code ... hab ja nicht behauptet er ginge nicht, aber...

wenn dein Programm jetzt einen String ala "ISO-8859-1" bekommt, wie soll es diesen denn jetzt in dieser Liste suchen?

OK, ich könnte das erste "-" mal einfach so blind ersetzen, aber wer sagt mir daß dieses in einer anderen Sprache nicht wieder anders geschrieben wird?


Oder hab ich das jetzt nur falsch verstanden und bezieht sich dieses "könnte sich (zuküntig) ändern" nicht auf die Identifiers der CodePages und ich könnte diese somit doch hart kodieren?

('nen kleines Array der nötigen CPs ... CP-String_to_CP-Ident)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: Code Page-Name zu Identifier

  Alt 18. Jan 2008, 11:15
Zitat von himitsu:
wenn dein Programm jetzt einen String ala "ISO-8859-1" bekommt, wie soll es diesen denn jetzt in dieser Liste suchen?
Vielleicht mit Delphi-Referenz durchsuchenPos() ?
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#17

Re: Code Page-Name zu Identifier

  Alt 18. Jan 2008, 11:20
Zitat von Union:
Vielleicht mit Delphi-Referenz durchsuchenPos() ?
Man beachte den roten Bindestrich in seinem Beispielstring...
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#18

Re: Code Page-Name zu Identifier

  Alt 18. Jan 2008, 11:45
Ok, also geht es wohl um die Umsetzung eines html charset in eine Windows-Codepage. Da es dabei ja wirklich diese kleinen gemeinen Unterschiede in der Schreibweise bei html und Windows gibt muss man im schlimmsten Fall wohl tatsächlich eine feste Umsetzungstabelle verwenden. [edit]... oder auch diese[/edit]
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.155 Beiträge
 
Delphi 12 Athens
 
#19

Re: Code Page-Name zu Identifier

  Alt 18. Jan 2008, 15:47
ok, dann halt doch hart kodiert ._.

nja, hoffentlich bleiben die Identifiers gleich ... klingt ja hier und da so, als könnte sich da mal was dran ändern.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  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 16:52 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