AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 19:17

Parameter dieser Suchanfrage:

Suche in Thema: Mal wieder Kodierungsprobleme. ANSI UTF8 UTF16
Suche alle Beiträge, die von "mensch72" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 9 von insges. 9 Treffern
Suche benötigte 0.001s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8 UTF16

     
      by mensch72, 18. Nov 2017
    ..."Ich verwende nun UTF-8."...
    keine schlechte Entscheidung, viele "alte" C/C++-Programmierer mit dem Dogma "ein String" ist und bleibt ein ByteArray sind diesen Weg gegangen!
    ->aber akzeptiere mit Delphi XE10.x das du nun überall ausser bei WebSeiten dich selbst stets beim Einlesen und Ausgeben und ALLEN WinApi Funktionen um die paassende Konvertierung kümmern musst, bzw immer prüfen ob die...
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8 UTF16

     
      by mensch72, 18. Nov 2017
    ..."Warum nicht nur Unicode."...
    Weil bis Delphi2007 die VCL NonUniCode war und UniCode mit TEncoding.XXX insbesondere UTF8 eigentlich erst seit XE5 wo erstmals richtig IOS&Android Mobile funktionieren und die NextGen Compiler brauchbar liefen. Da war dann auch die gemeinsame Delphi RTL soweit, dass man entschieden AnsiString unter FMX auf MobileDevices komplett zu entfernen so das ed dort...
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    Stimmungen und Gefühle beim programmieren vermeide ich, weil letztendlich macht die CPU ja doch nur was man ihr gesagt hat und nicht das was man will.
    (Selbst Frauen sind da einfacher, die machen zwar selten das was man ihnen sagt, aber oft doch das was (M)man will:) )

    function IsUTF8(const data:TStream):boolean;
    var
    Value:BYTE;
    begin
    Result:=False;

    data.Position:=0;
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    ..."IsUTF8... Ich verstehe es nicht einmal und werde es auch nie verstehen. Code soll einfach nur funktionieren"...

    => UniCode und WideStrings sowie das "TEncoding" von Delphi sind eben NICHT perfekt, wenn es um in der Praxis durchaus übliche Files OHNE BOM geht... daher SCHREIBT MAN SICH DAS EBEN BESSER FIX SELBST, denn vom schimpfen oder verdrängen/ignorieren löst das Problem ja nicht, egal...
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    ..."Da ich eine universelle Lösung brauche für das Laden von Textdateien UND das Laden/Speichern von Ini-Dateien, kann ich das leider nicht gebrauchen."...

    Jedem das seine, die paar da geschrieben Code Zeilen ergeben genau DIE UNIVERSELLE Lösung, die man sogar noch per einem weiterem IF auf zusätzlich UTF16 erweitern kann... aber mach wie du willst, nur schimpfe nicht auf das...
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    gaaaanz einfach, nix mit Ableitungen... nur einfach selbst VORHER "erkennen" ob UTF8 oder Ansi:)

    ms:TMemoryStream
    s:string;

    ms:=TMemoryStream.Create;
    ms.LoadFromFile('filename');

    if IsUTF8(ms) then
    s := DecodeUTF8toString(ms)
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    ..."Es sind immer Textdaten. Ganz normale Textdateien"...
    => ex gibt keine ganz normalen Textdaten, ausser den 127 ASCII Zeichen!!!

    Delphi oder WinAPI jenach dem welche "Ini" Funktionen du benutzt machen da also entweder UTF16, oder ANSI.(Nur Lazerus verwendet selbst UTF8)

    - also behandle IniFiles als ByteStream und lade sie in einen TMemmoryStream.
    - prüfe ob es UTF8 ist, und mache dann...
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    Solange du nicht weißt, "was" es für Daten sind, vermeide in Delphi alles was mit Char oder String zu tun hat!
    -> TBytes, TByteAarray oder ein TMemoryStream sind hier z.B. die passenden Speichertypen.

    Dann kannst du es mit
    try
    Memo1.Text := DecodeUTF8toString(MemoryStream);
    except
    Memo1.Text := DecodeANSItoString(MemoryStream);
    end;
    oder
  • Forum: Programmieren allgemein

    AW: Mal wieder Kodierungsprobleme. ANSI UTF8

     
      by mensch72, 17. Nov 2017
    ..."worin liegt der Unterschied"...

    https://de.wikipedia.org/wiki/UTF-8

    da steht viel Text, aber irgendwo in der Mitte steht, das "quasi" im UTF8 ByteArray nach einem HEX "11xxxxxx" stets mindestens ein weiteres Byte mit "10xxxxxx" folgen wird... und exakt das ist der Trick, wie man mit 98% Sicherheit sich selbst "ohne BOM" eine "IsUTF8" Funktion schreiben kann!
    (Man geht davon aus, dass...


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=mensch72&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=194418
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:22 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