Umlaute im String encoden

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Aufgrund der Corona-Krise: Die Veröffentlichung von Stellenangeboten und -gesuchen ist bis 31.12.2020 kostenfrei. Das beinhaltet auch Angebote und Gesuche von und für Freischaffende und Selbstständige.

  • Umlaute im String encoden

    Hallo,

    ich frage mich gerade, wie ich Umlaute wie ä, ü, ö in einem String encoden kann. Aktuell nutze ich bereits folgende Funktion um Emojis in einem String zu encoden:

    Quellcode

    1. func encode() -> String {
    2. let data = self.data(using: .nonLossyASCII, allowLossyConversion: true)!
    3. return String(data: data, encoding: .utf8)!
    4. }
    Ich dachte, dass das utf8 Format dafür auch ausreicht nur leider will das Ganze bei den Umlauten nicht funktionieren. Hat jemand vielleicht ne Idee oder einen Tipp für mich wie ich das Ganze dann am besten Encode ?
  • Du wandelst eine Zeichenkette in ASCII-Daten (7-Bit) und dann wieder zurück. Da ASCII ein Subset von UTF-8 ist und aufgrund der Lossy-Konvertierung geht dir dabei genau das 8. Bit (und mehr) verloren, das alle nicht ASCII-Zeichen brauchen. Was soll das bringen?

    Vielleicht solltest du für dich erstmal klären, was du mit „encoden“ überhaupt meinst.
    „Meine Komplikation hatte eine Komplikation.“