AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Verzeichnisnamen mit Umlauten
Thema durchsuchen
Ansicht
Themen-Optionen

Verzeichnisnamen mit Umlauten

Ein Thema von SittingDuck · begonnen am 1. Mär 2012 · letzter Beitrag vom 2. Mär 2012
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

AW: Verzeichnisnamen mit Umlauten

  Alt 1. Mär 2012, 16:05
Schön, daß Du so codierst. Aber der TE bekommt die Daten bzw. den Dateinamen "so geliefert". Also, was tun?
Sieh Post #7. Wie kommen die daten rein? Wenn das Schreibprogramm mist baut sollte man den Fehler dort korrigieren. ein DB wird nicht von sich aus umcodierungen vornehmen (ist mir jedenfalls beim Test vor 2-3 Jahren mit SQLite auch mit sonderzeichen etc. nicht aufgefallen).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Gustav.R
(Gast)

n/a Beiträge
 
#12

AW: Verzeichnisnamen mit Umlauten

  Alt 1. Mär 2012, 16:23
Okay, man/Du bekommst nie Daten, die seltsam aussehen.

Bin jetzt besser raus hier.

GG
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

AW: Verzeichnisnamen mit Umlauten

  Alt 1. Mär 2012, 16:26
Okay, man/Du bekommst nie Daten, die seltsam aussehen.
Permanent. Aber zu 99% werden die Fehler in den Vorsystemen korrigiert anstatt diese Fehler noch die nächsten 10/20 Jahre zu "pflegen".
Unsere Kunden haben oft von Systemen die Nase voll bei denen die Entwickler nicht auf diese Fehler hinweisen so das diese korrigiert werden und stattdessen immer nur um diese Fehler rumprogramieren.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
SittingDuck

Registriert seit: 11. Jan 2006
Ort: Leverkusen
159 Beiträge
 
Delphi 2010 Professional
 
#14

AW: Verzeichnisnamen mit Umlauten

  Alt 1. Mär 2012, 17:18
Danke schon mal für Eure Ideen ...

also eingtragen in die SQLite Datenbank wurde der Pfadname vom iPhone also von iOS5. Eine Sache an der ich jetzt nichts ändern kann. Mit meinem Tool "iTwin" (www.i-twin.de) hole ich diese Daten reverse-engeneering-mäßig da wieder raus und zeige sie an. Leider beschränkt sich das Problem nicht nur auf ÄäÖöÜüß sondern es kann mal wieder alles vorkommen ... Chinesisch, Japanisch, Russisch etc. so dass der einfache StringReplace leider ausscheidet.

Ich hatte einen Teilerfolg hiermit:
Path := String(WideStringToString(UTF8ToString(RawByteString(Path)))); und für einen Moment dachte ich das isses, weil mit diesem (zugegebenerweise fragwürdigen) Konstrukt aus meinem komischen Ä ein vernünfiges Ä gemacht wurde, aber diese Zeile versagt natürlich bei sämtlichen andern Zeichen wie z.B. Kyrill. Zur Erklärung: WideStringToString ist eine Routine aus der DP, welche ein WideCharToMultiByte mit entsprechender Codepage meiner Wahl durchführt. Ich habe nicht nur 1252 und 1201 sondern auch zahlreiche andene Codepages durch getestet ... nix Vernünftiges bzw. Universelles, leider.

Aus jetziger Sicht scheint ein einfaches UTF8ToString mit anschießendem StringReplace einen Großteil meiner Probleme, bis auf Weiteres zu lösen. Ganz korrekt ist das jedoch nicht ... Mal abwarten, wie lange es gut geht
Ciao ... SittingDuck
iPhone Backup und mehr: iTwin v3.9 Beta ... Alternative Startleiste: Launcher v3.8 !
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

AW: Verzeichnisnamen mit Umlauten

  Alt 2. Mär 2012, 08:54
Gut für das mehr an Kontext

Also ich denke die Anwendung die die DB befüllt will sich damit das Sortierungsproblem lösen das ä nach a einsortiert wird.

Letzendlich brauchst du eine Mappingtabelle wie es LMD schon (teilweise) realisiert hat.
Dort kann zu jedem zu jedem (combined) Zeichen die (bis zu 3) uncombined Zeichen definiert. Ein Funktion würde dann für jedes Zeichen im String suchen ob es dafür ein Combined Zeichen gibt und dieses dann verwenden und die uncombined Zeichen entfernen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#16

AW: Verzeichnisnamen mit Umlauten

  Alt 2. Mär 2012, 12:05
Wenn ich das richtig verstanden habe, werden Umlaute und Akzente mit Hilfe der sog. Deadkeys gebastelt. Ich hatte angenommen, das diese Technik seit dem Aussterben der Matrixdrucker ebenfalls tot ist.
Also solltest Du keine Probleme bekommen, wenn Du diese "aus 2 mach eins" Aktion auf genau abgestimmte Pärchen losläßt.
(das daß nicht das Gelbe vom Ei ist sollte allerdings auch klar sein)

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
SittingDuck

Registriert seit: 11. Jan 2006
Ort: Leverkusen
159 Beiträge
 
Delphi 2010 Professional
 
#17

AW: Verzeichnisnamen mit Umlauten

  Alt 2. Mär 2012, 13:53
So, das ganze Problem ist doch komplexer als man erstmal so denkt, vor allem, wenn man es richtig machen will ... Zumindestens hat das Kind aus meiner Sicht jetzt erstmal einen Namen: "NormalizeString" und entsprechende Details darüber habe ich hier bei stackoverflow gefunden.

Gut, ich bin zwar nicht der einzige mit Wunsch einen Unicodestring wieder zu vereinfachen, aber hilfreiche, selbst gebastelte, oder sogar fertige API Routinen habe ich leider dennoch nicht ausgraben können ...
Ciao ... SittingDuck
iPhone Backup und mehr: iTwin v3.9 Beta ... Alternative Startleiste: Launcher v3.8 !
  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 21:53 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