Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. gelöst: Unterschied Filezugriff Admin 5.x/4.x

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    gelöst: Unterschied Filezugriff Admin 5.x/4.x

    This topic has been deleted. Only users with topic management privileges can see it.
    • jackblackson
      jackblackson last edited by jackblackson

      Hallo!

      Ich habe meinen Adapter meteoalarm neu programmiert (Testphase läuft grad) , und zum Testen gleich den neuen Admin version 5 genutzt. Nun stellt sich raus, das sich dieser irgendwie anderst verhält, wenn ich auf Dateien zugreife. Dieser Code funktioniert gut bei Admin v5.1.9:

      fs.createReadStream('./admin/geocodes-aliases.csv')
              .pipe(parseCSV({delimiter: ','}))
              .on('data', function(csvrow) {
              csvContent.push(csvrow);        
              })
              .on('end',function() {
              //do something with csvData
              //adapter.log.debug(csvContent);
              resolve(csvContent);
              })
              .on('error', reject);
      

      Die Datei liegt auf Github im Admin Ordner. Wenn ich den selben Code unter Admin 4.1.2 laufen lassen, bekommen ich diesen Fehler:

       Error: ENOENT: no such file or directory, open './admin/geocodes-aliases.csv'
      

      Wie kann das sein?

      PS: Es könnte vielleicht auch mit unterschiedlichen js- controller Versionen zu tun haben. Funktioniert mit 3.3.10 (beta) , funktioniert nicht mit 3.2.16 (stable)

      1 Reply Last reply Reply Quote 0
      • UncleSam
        UncleSam Developer last edited by UncleSam

        Hi

        Zwei Kommentare meinerseits:

        1. Wenn du den Adapter neu schreibst, würde ich den neu generieren mit dem Adapter Creator. Gibt dir vielleicht eine Stunde zu tun, aber danach hast du den Code möglichst nahe an "unserem" Standard und kannst von allen Neuerungen des Creators profitieren.

        2. Zu dem Code:

        async function getCSVData(){
            return new Promise(
        

        Eine Funktion, die kein await enthält, muss nicht als async definiert werden.

        Zum eigentlichen Problem hast du ja im Chat schon einige Hinweise bekommen.

        jackblackson 1 Reply Last reply Reply Quote 0
        • jackblackson
          jackblackson @UncleSam last edited by

          @unclesam Danke für deine Tipps, werde mir den Adapter Creator ansehen.

          Das Problem ist inzwischen dank der Hilfe von @UncleSam und @Garfonso gelöst - folgender Code hat funktioniert (dank path.resolve):

          fs.createReadStream(path.resolve(__dirname, 'geocodes-aliases.csv'))
                  .pipe(parseCSV({delimiter: ','}))
                  .on('data', function(csvrow) {
                      //console.log(csvrow);
                      //do something with csvrow
                      csvContent.push(csvrow);        
                  })
                  .on('end',function() {
                  //do something with csvData
                  //adapter.log.debug(csvContent);
                  resolve(csvContent);
                  })
                  .on('error', reject);
          
          1 Reply Last reply Reply Quote 1
          • First post
            Last post

          Support us

          ioBroker
          Community Adapters
          Donate

          543
          Online

          31.7k
          Users

          79.8k
          Topics

          1.3m
          Posts

          2
          3
          229
          Loading More Posts
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes
          Reply
          • Reply as topic
          Log in to reply
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
          The ioBroker Community 2014-2023
          logo