AGB  ·  Datenschutz  ·  Impressum  







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

Unicode fails

Ein Thema von generic · begonnen am 29. Nov 2020 · letzter Beitrag vom 2. Dez 2020
Antwort Antwort
Seite 1 von 2  1 2      
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#1

Unicode fails

  Alt 29. Nov 2020, 16:17
Moin,

ich habe gerade schön gelacht. In einen TV-Beitrag haben die Umlaute mal richtig versaut.
Das möchte ich euch nicht vorenthalten:
https://www.youtube.com/watch?v=JjiaLf3jGxw&t=1405s

Ich würde mal tippen, dass die Schnittsoftware kein Unicode kann.

Wenn ihr auch Unicode fails kennt, dann schreibt die hier ruhig mal rein.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

AW: Unicode fails

  Alt 30. Nov 2020, 08:13
Oder einfach jemand hat irgendwo zu viel UTF8-Codierung eingebaut.
Ist mir auch schon vorgekommen das an durch eine Systemänderung auf einmal an einer Stelle statt String ein UTF8-Codierter String gekommen ist.
Kommt auch vor obwohl überall mit Unicodestrings gearbeitet wurde.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Unicode fails

  Alt 30. Nov 2020, 10:51
vielleicht heißt der ja so
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
885 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Unicode fails

  Alt 30. Nov 2020, 18:43
So eine falsche Kodierung wie im Video oben hatte ich mal bei einer Bestellung im xkcd-Shop. Bei der Stadt war das "ü" kaputt, und in Namen das "ß". Ist aber trotzdem ohne Verzögerung angekommen.

Ansonsten: Im Rahmen meiner ID3-Tag-Library bin ich mal auf ein mp3-File gestoßen, bei dem die Informationen "seltsam" angezeigt wurden. Mit Hilfe von HxD habe ich dann erkannt, dass folgende Kodierung verwendet wurde:
  • UTF-16 (ok, kein Problem)
  • Nullterminiert (ist ja durchaus sinnvoll)
  • mit Byte-Order-Mark (kann man machen ...)
  • das alles aber zeichenweise
Kein Witz - 6 Byte pro Zeichen. Für jedes 2-Byte Zeichen zusätzliche 2 Byte BOM und 2 Byte Terminator. Ich habe dann beschlossen, für diesen Murks keine Erkennungs-Heuristik einzubauen. Bei sowas wird dann einfach Murks angezeigt.
The angels have the phone box.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Unicode fails

  Alt 30. Nov 2020, 18:55
Ich hatte nichtmal gesehn wo der Fehler sein sollte?
Hab mir aber auch nicht jede Sekunde des Films genau angeguckt.

@Gausi: Na komm schon, das zu implememntieren wäre doich witzig geworden.
Noch besser wäre es aber, wenn jedes Zeichen auch noch anders kodiert worden wäre.
Ob die beim NSA auch so faul sind? Dann hätten wir jetzt eine neue "Verschlüsselung" gefunden.



Ein Deutscher Eurofighter-Pilot.
Und im Vorspann kommt Deutschland auch nur einmal vor ... außer den Braunkohledingern hat Deutschland doch nichts Großartiges zu bieten
und wenn wir die bald alle abgeschaltet haben, dann existieren wir in solchen Dokumentationen garnicht mehr.

[edit]
Grad nochmal geguckt und da war es ja ... aber nach ner halben Sekunde durch die Werbung verdeckt. (sollte ich hier auch mal den YT-Werbeblocker installieren)


Ich denk mal das Programm kann Unicode, aber irgendwo wurde UTF-8 als ANSI/ASCII behandelt, z.B. ohne BOM gespeichert und dann beim Einlesen mit falscher Kodierung.


Wir haben jetzt einen Linux-"Guru" in der Firma
und weil sein Programm nicht mit UTF-8-Dateien mit BOM klar kommt und abstürzt,
wurden alle Dateien als UTF-8 ohne BOM neu abgespeichert,
aber nun kommt Delphi nicht mit UTF-8 ohne BOM klar
und speichert das wieder mit BOM ab und wenn das dann im GitHub landet,
dann verreckt dessen CI, wenn es die SQL-Scripte testen will.
$2B or not $2B

Geändert von himitsu (30. Nov 2020 um 19:05 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Unicode fails

  Alt 30. Nov 2020, 21:07
Wir haben jetzt einen Linux-"Guru" in der Firma
und weil sein Programm nicht mit UTF-8-Dateien mit BOM klar kommt und abstürzt,
wurden alle Dateien als UTF-8 ohne BOM neu abgespeichert,
aber nun kommt Delphi nicht mit UTF-8 ohne BOM klar
und speichert das wieder mit BOM ab und wenn das dann im GitHub landet,
dann verreckt dessen CI, wenn es die SQL-Scripte testen will.
Da stelle ich mir immer vor, wenn so Leute in 1970 dachten "In 50 Jahren haben wir fliegende Autos und Weltfrieden und so" und dann scheitert Computersoftware immer noch an Text-Encoding.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Unicode fails

  Alt 30. Nov 2020, 21:25
Nja, Problem ist ja, dass im Linux viele Programme ohne BOM davon ausgehen, dass es UTF-8 ist (bzw. die haben eine Encoding-Erkennung drin), während im Windows viele Programme standardmäßig von ANSI ausgehn.
Mit BOM wüsste jeder was es ist.

Bin ich der Einzige, der meint, dass man etwas so bauen sollte, dass Programme mit den frischinstallierten Standardeinstellungen etwas hinbekommen sollten?
k.A. was so schwer dran ist das BOM einfach zu ignorieren (oder besser noch zu behandeln), in dem Programm was er geschrieben hat, so dass auch Fremdprogramme (die ich nicht selbst programmiert habe) damit umgehen können?
Sorry, wenn ich zum Bearbeiten von SQL-Dateien (was selten passiert) gleich die schon offene Delphi-IDE benutzte, wenn ich parallel im DelphiCode rumfummle und keine "Lust" hab noch ein weiteres Programm zu installieren und zu nutzen. (ja, Codefolding, Codevervollständigung und so gibt es da nicht, aber brauch ich auch nicht)



Vor 20 Jahren wollte Intel in 10 Jahren (also vor 10) den P4 so weit haben, dass der mit 30 GHz läuft. (falls ich das vor Kurzem richtig gelesen hatte)
Datei aber bis zu 5 KW verbrät, also 20 A zieht (aus der Stecktose und somit am Starkstromstecker) und durch den Chip selbst 2500 A "rauchen" müssten (bei 2 V).
(wenn jetzt ein Chip grade mal so die 3 GHz schafft, ist das "schnell")
$2B or not $2B
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Unicode fails

  Alt 1. Dez 2020, 11:00
Da stelle ich mir immer vor, wenn so Leute in 1970 dachten "In 50 Jahren haben wir fliegende Autos und Weltfrieden und so" und dann scheitert Computersoftware immer noch an Text-Encoding.
Passend dazu:
https://xkcd.com/1953/

Und die zum eigentlichen Thema:
https://xkcd.com/1137/
https://xkcd.com/1209/
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Unicode fails

  Alt 1. Dez 2020, 11:32
Falls jemand den Text nicht lesen kann.
202E schaltet von left-to-right um

Das ist hier auf irgendeinem Shortcut ... k.A. auf Welchem, ich erwisch ihn nur machmal und muß dann neu starten, weil ich den Shortcut mir nicht merken kann.
Genauso wie in der Delphi-IDE der Editormode mit dem grauenhaft permanenten Verhalten der Selektierung.
$2B or not $2B
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.081 Beiträge
 
Delphi 2009 Professional
 
#10

AW: Unicode fails

  Alt 2. Dez 2020, 18:19
Es gibt genügend Programme, die an UTF-16 scheitern, weil sie nur UCS-2 unterstützen. Von denen, die UTF-16 unterstützen, aber zum Speichern/Datentransfer meinen, sie würden UTF-8 benutzen, nutzen manche in Wirklichkeit CESU-8.

Delphi unterstützt seit der Einführung in Delphi 2009 UTF-16 komplett. UTF8Decode funktioniert bei mir hingegen in D2009 teils nicht mit z.B. großen Umlauten, weshalb ich eine eigene Decoderfunktion verwende. In neueren Delphis funktioniert mein Code nicht mit, dafür aber ohne diese eigene Decoderfunktion.

Unsere Telefonanlage in der Firma (Starface) ist sehr interessant: Die Mobile App ist unicode-fähig. Der Windows-Client kann nur UCS-2. Fügt man ein Zeichen außerhalb der BMP ein, kommt es trotzdem auf dem Handy richtig an, obwohl der Windows-Client es als zwei Klötzchen darstellt.

Im Rahmen meiner ID3-Tag-Library bin ich mal auf ein mp3-File gestoßen, bei dem die Informationen "seltsam" angezeigt wurden. Mit Hilfe von HxD habe ich dann erkannt, dass folgende Kodierung verwendet wurde:
  • UTF-16 (ok, kein Problem)
  • Nullterminiert (ist ja durchaus sinnvoll)
  • mit Byte-Order-Mark (kann man machen ...)
  • das alles aber zeichenweise
Kein Witz - 6 Byte pro Zeichen. Für jedes 2-Byte Zeichen zusätzliche 2 Byte BOM und 2 Byte Terminator. Ich habe dann beschlossen, für diesen Murks keine Erkennungs-Heuristik einzubauen. Bei sowas wird dann einfach Murks angezeigt.
Bist du dir sicher, dass du UTF-16 meinst und nicht UCS-2?
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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:23 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