ReadPreferenceString+Unicode

Anfängerfragen zum Programmieren mit PureBasic.
lite
Beiträge: 122
Registriert: 27.08.2012 21:08

ReadPreferenceString+Unicode

Beitrag von lite »

Hallo

Ich hoffe mir kann hier jemand helfen zum Thema "ReadPreferenceString" und Unicode.
Gibt es eine Prodzedure die Unicode verarbeiten kann, das Standart PureBasic kann es leider nicht.
Oder kennt jemand eine WinApi dazu ?
Ich bräuchte so ziemlich alle Möglichkeiten die mit Prefences zu tun haben ( Lesen, Schreiben, Überprüfen)
Umwandeln eine Datei bringt mir nicht viel, da ich die Unicode informationen brauch.

Ergebnis$ = ReadPreferenceString(Keyword$, StandardWert$)

[Sektion]
Schlüssel=Wert

Grüße

Lite
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: ReadPreferenceString+Unicode

Beitrag von STARGÅTE »

lite hat geschrieben:Gibt es eine Prodzedure die Unicode verarbeiten kann, das Standart PureBasic kann es leider nicht.
PureBasic kann sehrwohl Unicode-Preferenz-Dateien lesen und schreiben, wie dieses Beispiel zeigt (sogar mit Unicode-Keys):

Code: Alles auswählen

CreatePreferences("Example.ini")
	WritePreferenceString("κλειδί", "παράδειγμα")
ClosePreferences()

OpenPreferences("Example.ini")
	MessageRequester("κλειδί", ReadPreferenceString("κλειδί", ""))
ClosePreferences()
(PB-Dateiformat UTF8 aktivieren)

Bist du dir sicher, dass die Preferens auch ein BOM hat und du Unicode aktiviert hast?
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Re: ReadPreferenceString+Unicode

Beitrag von PMV »

So weit ich weis muss der Unicode-Modus aktiviert werden.
Dann schreiben und lesen die Preference-Befehle UTF-8, sonst
ASCII. Alternativ hatte ich hier auch mal ne eigene Preference-
Include rein gestellt, die mit der File-Lib von PB umgesetzt ist.
http://forums.purebasic.com/german/view ... =8&t=12117

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
lite
Beiträge: 122
Registriert: 27.08.2012 21:08

Re: ReadPreferenceString+Unicode

Beitrag von lite »

Danke für die schnellen Antworten.
Unicode hab ich aktiviert. Habs getestet welche Formate funktionieren.
Es sind Ascii und UTF-8 funktionieren, dagegen Unicode und Unicode(BigEndian) funktionieren nicht.
Ob sie einen BOM haben weiss ich nicht, aber ich ändere das Format mit Notepad.exe.
Speichern unter. "Codierung".

@PMV kannst du mir ein Beispiel geben für das Lesen eines Wertes ?

lite
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: ReadPreferenceString+Unicode

Beitrag von STARGÅTE »

@lite

Du kannst die Preferenz aber von Unicode in UTF8 umwandeln, dabei gehen keine Zeichen verloren.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Re: ReadPreferenceString+Unicode

Beitrag von PMV »

lite hat geschrieben:@PMV kannst du mir ein Beispiel geben für das Lesen eines Wertes ?
Die funktionieren genau so wie die PB-Befehle, ich denke das kriegst schon hin.
Der dritte Codeblock mit dem Speedtest enthält sogar alle(?) Befehle.

Das einzige was sein kann ist, das es mit der aktuellen Version von PB
nicht sofort klappt, aber viel geändert haben wird sich da auch nicht.
Die Include an zu passen sollte für dich kein Problem sein, ich hab
aktuell keine Verwendung und Zeit dafür. Sorry. Wenn du aber
nen Bug finden solltest, kannst ihn gerne im dortigen Thread
posten. Ich schaus mir dann an wenn ich Zeit hab. :wink:

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
lite
Beiträge: 122
Registriert: 27.08.2012 21:08

Re: ReadPreferenceString+Unicode

Beitrag von lite »

Hallo

Super, die Prozedure von PMV funktioniert auch mit Unicode. Genau danach hab ich gesucht.
Herzlichen Dank dafür. Es ist schade, das die Entwickler keine solche Funktionen mit anbieten.
PureBasic gibt es doch schon eine Weile.

Grüße

lite
Antworten