Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Suche Script zur Konvertierung von Unicode auf UTF-8

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    776

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Suche Script zur Konvertierung von Unicode auf UTF-8

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
28 Beiträge 5 Kommentatoren 2.0k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • hg6806H Offline
    hg6806H Offline
    hg6806
    Most Active
    schrieb am zuletzt editiert von
    #9

    @asgothian

    Danke, aber das war soweit klar.

    Das Einzige was ich nicht verstehe ist, wie der Code in der JS Funktion aussieht, sprich, den Datenpunkt auslesen und durch @Codierknecht 's Funktion zurückgibt.

    HomoranH 1 Antwort Letzte Antwort
    0
    • hg6806H hg6806

      @asgothian

      Danke, aber das war soweit klar.

      Das Einzige was ich nicht verstehe ist, wie der Code in der JS Funktion aussieht, sprich, den Datenpunkt auslesen und durch @Codierknecht 's Funktion zurückgibt.

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #10

      @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

      wie der Code in der JS Funktion aussieht,

      hat @Codierknecht dir doch hier gezeigt

      @codierknecht sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

      f4bc90ca-8b16-4d3f-beda-9ca1206037c5-image.png

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      0
      • hg6806H hg6806

        @codierknecht

        Sorry, ist mir noch immer zu hoch.
        Wie bringe ich den Datenpunkt der umgewandelt werden soll dort hinein?

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #11

        @hg6806 sagte: Wie bringe ich den Datenpunkt der umgewandelt werden soll dort hinein?

        Blockly_temp.JPG

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        1
        • hg6806H Offline
          hg6806H Offline
          hg6806
          Most Active
          schrieb am zuletzt editiert von hg6806
          #12

          fd3c8d64-7166-4ea0-9e3d-f42ece4421ab-image.png

          In der Funktion steht lediglich:

          return unescape(text);
          

          Passiert aber nichts bei Aktualisierung des Status.

          Ich hätte jetzt eher damit gerechnet, dass im Code von der Funktion eher sowas stehen muss (mal von JSON abgesehen)

          //Datenpunkt mit MQTT-Informationen im json-Format auslesen
          json = (function () { try {return JSON.parse(getState("mqtt.0.home.OMG_ESP32_BLE.BTtoMQTT.E72E00D32042").val);} catch(e) {return {};}})();
          //json auslesen und Datenpunkte für Temperatur, Luftfeuchte und Batterie
          setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.Temperature", getAttr(json, 'tempc'));
          setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.Humidity", getAttr(json, 'hum'));
          setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.Battery", getAttr(json, 'batt'));
          setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.RSSI", getAttr(json, 'rssi'));
          //Log Ausgabe als return der Funktion
          return "MQTT MI_E72E00D32042 aktualisiert";
          
          CodierknechtC 1 Antwort Letzte Antwort
          0
          • hg6806H hg6806

            fd3c8d64-7166-4ea0-9e3d-f42ece4421ab-image.png

            In der Funktion steht lediglich:

            return unescape(text);
            

            Passiert aber nichts bei Aktualisierung des Status.

            Ich hätte jetzt eher damit gerechnet, dass im Code von der Funktion eher sowas stehen muss (mal von JSON abgesehen)

            //Datenpunkt mit MQTT-Informationen im json-Format auslesen
            json = (function () { try {return JSON.parse(getState("mqtt.0.home.OMG_ESP32_BLE.BTtoMQTT.E72E00D32042").val);} catch(e) {return {};}})();
            //json auslesen und Datenpunkte für Temperatur, Luftfeuchte und Batterie
            setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.Temperature", getAttr(json, 'tempc'));
            setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.Humidity", getAttr(json, 'hum'));
            setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.Battery", getAttr(json, 'batt'));
            setState("0_userdata.0.OpenMQTTGateway_BLE.E72E00D32042.RSSI", getAttr(json, 'rssi'));
            //Log Ausgabe als return der Funktion
            return "MQTT MI_E72E00D32042 aktualisiert";
            
            CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #13

            @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

            Ich hätte jetzt eher damit gerechnet, dass im Code von der Funktion eher sowas stehen muss (mal von JSON abgesehen)

            Die Funktion nimmt lediglich den codierten Text entgegen und liefert das umcodierte Ergebnis zurück.
            Bau doch statt (oder zusätzlich) dem "aktualisiere" mal einen Debug-Block ein. Der schreibt das Ergebnis dann auch ins Log um das mal zu überprüfen.

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            AsgothianA 1 Antwort Letzte Antwort
            0
            • CodierknechtC Codierknecht

              @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

              Ich hätte jetzt eher damit gerechnet, dass im Code von der Funktion eher sowas stehen muss (mal von JSON abgesehen)

              Die Funktion nimmt lediglich den codierten Text entgegen und liefert das umcodierte Ergebnis zurück.
              Bau doch statt (oder zusätzlich) dem "aktualisiere" mal einen Debug-Block ein. Der schreibt das Ergebnis dann auch ins Log um das mal zu überprüfen.

              AsgothianA Offline
              AsgothianA Offline
              Asgothian
              Developer
              schrieb am zuletzt editiert von Asgothian
              #14

              @codierknecht sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

              @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

              Ich hätte jetzt eher damit gerechnet, dass im Code von der Funktion eher sowas stehen muss (mal von JSON abgesehen)

              Die Funktion nimmt lediglich den codierten Text entgegen und liefert das umcodierte Ergebnis zurück.
              Bau doch statt (oder zusätzlich) dem "aktualisiere" mal einen Debug-Block ein. Der schreibt das Ergebnis dann auch ins Log um das mal zu überprüfen.

              Du hast geschrieben das der State den Text beinhaltet, der in UTF8 wieder heraus geschrieben werden soll.

              Bau bitte 2 debug Bausteine ein:

              einmal vor dem Aktualisiere, und häng da den 'wert' rein
              einmal nach dem Aktualisiere, und häng da den gleichen Baustein rein wie im aktualisiere.

              Dann lass laufen, warte bis sich der Datenpunkt geändert hat und poste das hier. Dann können wir sehen:

              • was kommt im DP rein
              • was kommt aus der Funktion raus.

              A.

              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

              1 Antwort Letzte Antwort
              1
              • hg6806H Offline
                hg6806H Offline
                hg6806
                Most Active
                schrieb am zuletzt editiert von
                #15

                OK, ich danke euch!

                7581e0e8-8fb2-4a06-a9b5-a4f70e231879-image.png

                11.3.2025, 07:28:10.209	[info ]: javascript.0 (157280) Stopping script script.js.common.Auto+OpenWB.Charge-Werte_auslesen
                11.3.2025, 07:28:10.311	[info ]: javascript.0 (157280) Start JavaScript script.js.common.Auto+OpenWB.Charge-Werte_auslesen (Blockly)
                11.3.2025, 07:28:10.320	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: registered 5 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                11.3.2025, 07:28:32.169	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Die Ladung kann nicht gestartet werden, da die Einschaltschwelle nicht erreicht wird."
                11.3.2025, 07:28:32.169	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Die Ladung kann nicht gestartet werden, da die Einschaltschwelle nicht erreicht wird."
                11.3.2025, 07:29:12.253	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Control-Pilot-Unterbrechung f\u00fcr 4s."
                11.3.2025, 07:29:12.254	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Control-Pilot-Unterbrechung f\u00fcr 4s."
                11.3.2025, 07:29:21.712	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Ladevorgang wurde gestartet... (bei Problemen: Pr\u00fcfe bitte zuerst in den Einstellungen 'Ladeeinstellungen' und 'Konfiguration'.)"
                11.3.2025, 07:29:21.712	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Ladevorgang wurde gestartet... (bei Problemen: Pr\u00fcfe bitte zuerst in den Einstellungen 'Ladeeinstellungen' und 'Konfiguration'.)"
                

                Die Funktion läuft wohl nicht

                AsgothianA 1 Antwort Letzte Antwort
                0
                • hg6806H hg6806

                  OK, ich danke euch!

                  7581e0e8-8fb2-4a06-a9b5-a4f70e231879-image.png

                  11.3.2025, 07:28:10.209	[info ]: javascript.0 (157280) Stopping script script.js.common.Auto+OpenWB.Charge-Werte_auslesen
                  11.3.2025, 07:28:10.311	[info ]: javascript.0 (157280) Start JavaScript script.js.common.Auto+OpenWB.Charge-Werte_auslesen (Blockly)
                  11.3.2025, 07:28:10.320	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: registered 5 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                  11.3.2025, 07:28:32.169	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Die Ladung kann nicht gestartet werden, da die Einschaltschwelle nicht erreicht wird."
                  11.3.2025, 07:28:32.169	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Die Ladung kann nicht gestartet werden, da die Einschaltschwelle nicht erreicht wird."
                  11.3.2025, 07:29:12.253	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Control-Pilot-Unterbrechung f\u00fcr 4s."
                  11.3.2025, 07:29:12.254	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Control-Pilot-Unterbrechung f\u00fcr 4s."
                  11.3.2025, 07:29:21.712	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Ladevorgang wurde gestartet... (bei Problemen: Pr\u00fcfe bitte zuerst in den Einstellungen 'Ladeeinstellungen' und 'Konfiguration'.)"
                  11.3.2025, 07:29:21.712	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Ladevorgang wurde gestartet... (bei Problemen: Pr\u00fcfe bitte zuerst in den Einstellungen 'Ladeeinstellungen' und 'Konfiguration'.)"
                  

                  Die Funktion läuft wohl nicht

                  AsgothianA Offline
                  AsgothianA Offline
                  Asgothian
                  Developer
                  schrieb am zuletzt editiert von
                  #16

                  @hg6806 du musst schon den funktionsblock in den 2. Debug hängen, nicht nur den “Wert” Block.

                  A.

                  ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                  "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                  1 Antwort Letzte Antwort
                  0
                  • hg6806H Offline
                    hg6806H Offline
                    hg6806
                    Most Active
                    schrieb am zuletzt editiert von hg6806
                    #17

                    So?

                    6c290704-8230-4615-8f30-b27d71d53d28-image.png

                    Ergebnis ist das Gleiche

                    11.3.2025, 07:54:11.184	[info ]: javascript.0 (157280) Stopping script script.js.common.Auto+OpenWB.Charge-Werte_auslesen
                    11.3.2025, 07:54:11.276	[info ]: javascript.0 (157280) Start JavaScript script.js.common.Auto+OpenWB.Charge-Werte_auslesen (Blockly)
                    11.3.2025, 07:54:11.285	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: registered 5 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                    11.3.2025, 07:54:49.125	[info ]: javascript.0 (157280) Stopping script script.js.common.Auto+OpenWB.Charge-Werte_auslesen
                    11.3.2025, 07:54:49.263	[info ]: javascript.0 (157280) Start JavaScript script.js.common.Auto+OpenWB.Charge-Werte_auslesen (Blockly)
                    11.3.2025, 07:54:49.265	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: registered 5 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                    11.3.2025, 07:55:32.315	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Die Ladung kann nicht gestartet werden, da die Einschaltschwelle nicht erreicht wird."
                    11.3.2025, 07:55:32.315	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Die Ladung kann nicht gestartet werden, da die Einschaltschwelle nicht erreicht wird."
                    11.3.2025, 07:56:01.958	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Control-Pilot-Unterbrechung f\u00fcr 4s."
                    11.3.2025, 07:56:01.958	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Control-Pilot-Unterbrechung f\u00fcr 4s."
                    11.3.2025, 07:56:12.509	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Keine Ladung, da der Lademodus Stop aktiv ist."
                    11.3.2025, 07:56:12.509	[info ]: javascript.0 (157280) script.js.common.Auto+OpenWB.Charge-Werte_auslesen: "Keine Ladung, da der Lademodus Stop aktiv ist."
                    
                    1 Antwort Letzte Antwort
                    0
                    • hg6806H Offline
                      hg6806H Offline
                      hg6806
                      Most Active
                      schrieb am zuletzt editiert von
                      #18

                      Habe als Ausgabe mal einen neuen Datenpunkt erzeugt, in den wird nun auch was geschrieben, jedoch auch unkodiert, also noch ohne Umlaute.

                      In den alten Ausgabepunkt konnte nichts geschrieben werden.
                      Weil er von OpenWB/MQTT erzeugt wurde?

                      CodierknechtC 1 Antwort Letzte Antwort
                      0
                      • hg6806H hg6806

                        Habe als Ausgabe mal einen neuen Datenpunkt erzeugt, in den wird nun auch was geschrieben, jedoch auch unkodiert, also noch ohne Umlaute.

                        In den alten Ausgabepunkt konnte nichts geschrieben werden.
                        Weil er von OpenWB/MQTT erzeugt wurde?

                        CodierknechtC Online
                        CodierknechtC Online
                        Codierknecht
                        Developer Most Active
                        schrieb am zuletzt editiert von Codierknecht
                        #19

                        @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                        Die Funktion läuft wohl nicht

                        Naja - "laufen" tut die schon. Sie bringt nur nicht das gewünschte Ergebnis :-(

                        Dann halt erstmal die Holzhammer-Methode:

                            let result = text.replaceAll('\u00e4', 'ä');
                            result = result.replaceAll('\u00f6', 'ö');
                            result = result.replaceAll('\u00fc', 'ü');
                            result = result.replaceAll('\u00c4', 'Ä');
                            result = result.replaceAll('\u00c6', 'Ö');
                            result = result.replaceAll('\u00dc', 'Ü');
                            result = result.replaceAll('\u00df', 'ß');
                            return result;
                        
                        

                        Edit
                        Natürlich könnte man das auch generisch machen und alles was mit \u00 beginnt in den entsprechenden Code übersetzen.
                        Das dürfte aber von der Performance noch etwas ungünstiger sein.

                        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                        HmIP|ZigBee|Tasmota|Unifi
                        Zabbix Certified Specialist
                        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                        1 Antwort Letzte Antwort
                        0
                        • CodierknechtC Online
                          CodierknechtC Online
                          Codierknecht
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #20

                          @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                          In den alten Ausgabepunkt konnte nichts geschrieben werden.
                          Weil er von OpenWB/MQTT erzeugt wurde?

                          In Datenpunkte die "einem Adapter gehören" schreibt man nur dann (und zwar ohne Ack-Flag), wenn der Adapter auch etwas damit anfangen kann. Also wenn er den Wert z.B. an ein Gerät übertragen soll etc.
                          Zum "Umformatieren" nimmt man entweder einen Alias (wenn man den Wert per Konvertierungsfunktion verarbeiten kann) oder einen eigenen DP in 0_userdata.0 (wenn der Wert per Script umformatiert werden muss).

                          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                          HmIP|ZigBee|Tasmota|Unifi
                          Zabbix Certified Specialist
                          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                          1 Antwort Letzte Antwort
                          0
                          • hg6806H Offline
                            hg6806H Offline
                            hg6806
                            Most Active
                            schrieb am zuletzt editiert von
                            #21

                            Also, Funktion sieht jetzt so aus, wie vorgegeben:
                            fa99eec9-affa-454e-ab53-71ec02195740-image.png

                            Ergebnis ist noch immer ohne Umlaute.

                            @Codierknecht Ja, habe jetzt den DP in userdata

                            CodierknechtC 1 Antwort Letzte Antwort
                            0
                            • hg6806H hg6806

                              Also, Funktion sieht jetzt so aus, wie vorgegeben:
                              fa99eec9-affa-454e-ab53-71ec02195740-image.png

                              Ergebnis ist noch immer ohne Umlaute.

                              @Codierknecht Ja, habe jetzt den DP in userdata

                              CodierknechtC Online
                              CodierknechtC Online
                              Codierknecht
                              Developer Most Active
                              schrieb am zuletzt editiert von
                              #22

                              @hg6806
                              Poste hier mal bitte (in Code-Tags </>) nicht das was im Log steht, sondern den Inhalt des Original-DP aus OpenWB/MQTT.

                              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                              HmIP|ZigBee|Tasmota|Unifi
                              Zabbix Certified Specialist
                              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                              hg6806H 1 Antwort Letzte Antwort
                              0
                              • CodierknechtC Codierknecht

                                @hg6806
                                Poste hier mal bitte (in Code-Tags </>) nicht das was im Log steht, sondern den Inhalt des Original-DP aus OpenWB/MQTT.

                                hg6806H Offline
                                hg6806H Offline
                                hg6806
                                Most Active
                                schrieb am zuletzt editiert von
                                #23

                                @codierknecht

                                "Ladevorgang wurde gestartet... (bei Problemen: Pr\u00fcfe bitte zuerst in den Einstellungen 'Ladeeinstellungen' und 'Konfiguration'.)"
                                
                                CodierknechtC 1 Antwort Letzte Antwort
                                0
                                • hg6806H hg6806

                                  @codierknecht

                                  "Ladevorgang wurde gestartet... (bei Problemen: Pr\u00fcfe bitte zuerst in den Einstellungen 'Ladeeinstellungen' und 'Konfiguration'.)"
                                  
                                  CodierknechtC Online
                                  CodierknechtC Online
                                  Codierknecht
                                  Developer Most Active
                                  schrieb am zuletzt editiert von
                                  #24

                                  @hg6806
                                  Versuchs mal so:

                                      let result = text.replaceAll('\\u00e4', 'ä');
                                      result = result.replaceAll('\\u00f6', 'ö');
                                      result = result.replaceAll('\\u00fc', 'ü');
                                      result = result.replaceAll('\\u00c4', 'Ä');
                                      result = result.replaceAll('\\u00c6', 'Ö');
                                      result = result.replaceAll('\\u00dc', 'Ü');
                                      result = result.replaceAll('\\u00df', 'ß');
                                      return result;
                                  

                                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                  HmIP|ZigBee|Tasmota|Unifi
                                  Zabbix Certified Specialist
                                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                  hg6806H 1 Antwort Letzte Antwort
                                  0
                                  • CodierknechtC Codierknecht

                                    @hg6806
                                    Versuchs mal so:

                                        let result = text.replaceAll('\\u00e4', 'ä');
                                        result = result.replaceAll('\\u00f6', 'ö');
                                        result = result.replaceAll('\\u00fc', 'ü');
                                        result = result.replaceAll('\\u00c4', 'Ä');
                                        result = result.replaceAll('\\u00c6', 'Ö');
                                        result = result.replaceAll('\\u00dc', 'Ü');
                                        result = result.replaceAll('\\u00df', 'ß');
                                        return result;
                                    
                                    hg6806H Offline
                                    hg6806H Offline
                                    hg6806
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #25

                                    @codierknecht sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                                    let result = text.replaceAll('\u00e4', 'ä');
                                    result = result.replaceAll('\u00f6', 'ö');
                                    result = result.replaceAll('\u00fc', 'ü');
                                    result = result.replaceAll('\u00c4', 'Ä');
                                    result = result.replaceAll('\u00c6', 'Ö');
                                    result = result.replaceAll('\u00dc', 'Ü');
                                    result = result.replaceAll('\u00df', 'ß');
                                    return result;

                                    BINGO!

                                    Jetzt läuft es. Lag es evtl. an den Anführungszeichen im String?

                                    Vielen Dank allen!

                                    CodierknechtC 1 Antwort Letzte Antwort
                                    0
                                    • hg6806H hg6806

                                      @codierknecht sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                                      let result = text.replaceAll('\u00e4', 'ä');
                                      result = result.replaceAll('\u00f6', 'ö');
                                      result = result.replaceAll('\u00fc', 'ü');
                                      result = result.replaceAll('\u00c4', 'Ä');
                                      result = result.replaceAll('\u00c6', 'Ö');
                                      result = result.replaceAll('\u00dc', 'Ü');
                                      result = result.replaceAll('\u00df', 'ß');
                                      return result;

                                      BINGO!

                                      Jetzt läuft es. Lag es evtl. an den Anführungszeichen im String?

                                      Vielen Dank allen!

                                      CodierknechtC Online
                                      CodierknechtC Online
                                      Codierknecht
                                      Developer Most Active
                                      schrieb am zuletzt editiert von
                                      #26

                                      @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                                      Lag es evtl. an den Anführungszeichen im String?

                                      Nein. Es lag daran, dass ein \ ein Steuerzeichen ist und im String "escaped" werden muss.

                                      Hier noch eine generische Variante:

                                        return text.replace(/\\u[0-9a-fA-F]{4}/gi, match => {
                                          return String.fromCharCode(parseInt(match.replace(/\\u/g, ""), 16));
                                        });
                                      

                                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                      HmIP|ZigBee|Tasmota|Unifi
                                      Zabbix Certified Specialist
                                      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                      hg6806H 1 Antwort Letzte Antwort
                                      0
                                      • CodierknechtC Codierknecht

                                        @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                                        Lag es evtl. an den Anführungszeichen im String?

                                        Nein. Es lag daran, dass ein \ ein Steuerzeichen ist und im String "escaped" werden muss.

                                        Hier noch eine generische Variante:

                                          return text.replace(/\\u[0-9a-fA-F]{4}/gi, match => {
                                            return String.fromCharCode(parseInt(match.replace(/\\u/g, ""), 16));
                                          });
                                        
                                        hg6806H Offline
                                        hg6806H Offline
                                        hg6806
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #27

                                        @codierknecht

                                        Ja, geht auch so. Danke nochmals!

                                        CodierknechtC 1 Antwort Letzte Antwort
                                        0
                                        • hg6806H hg6806

                                          @codierknecht

                                          Ja, geht auch so. Danke nochmals!

                                          CodierknechtC Online
                                          CodierknechtC Online
                                          Codierknecht
                                          Developer Most Active
                                          schrieb am zuletzt editiert von
                                          #28

                                          @hg6806 sagte in Suche Script zur Konvertierung von Unicode auf UTF-8:

                                          geht auch so

                                          Dann würde ich das bevorzugen.
                                          Die "Holzhammer-Methode" ist ja auf einige (7) spezifische Fälle beschränkt.
                                          Die generische Variante ist universeller.

                                          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                          HmIP|ZigBee|Tasmota|Unifi
                                          Zabbix Certified Specialist
                                          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          899

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe