Javascript - CSV-Datein einlesen ohne JQuery

  • Hallo,


    ich suche schon sehr lange nach einer Lösung in Javascript eine CSV-Datei einzulesen

    und die Daten dann auszugeben. Vielleicht kennt einer eine gute Lösung für mein

    Problem.


    Schonmal danke für eure Hilfe :D

  • z.B. mit der FileSystem API, die ist aber nicht standardisiert und im IE bspw. nicht verwendbar.

    Wozu man das braucht, wüsste ich allerdings nicht, wenn ich ehrlich bin...

  • Könntest du mit vielleicht ein Beispiel geben(als Code),

    wie ich eine CSV-Datei einlese und die dann in einer Variable

    abgespeichert ist, die ich dann weiterverwenden kann?

  • HTML
    1. <input type="file" name="localFile">
    2. <div class="content"></div>
    JavaScript
    1. document.querySelector( 'input[type="file"]' ).addEventListener( 'change', function(e) {
    2. _reader = new FileReader();
    3. _reader.addEventListener( 'load', () => { document.querySelector('div.content').innerText = _reader.result; });
    4. _reader.readAsText( e.target.files[0] );
    5. });
  • Um Javascript im Browser auszuführen, brauchst Du ein HTML-Dokument. In welchem Umfang steht auf einem anderen Blatt, aber ohne HTML als Basis geht das nicht. Du solltest Dich mit den Dingen befassen und versuchen diese zu verstehen, bevor Du solche Aufgaben umsetzen willst.

  • Mir ist schon klar das ohne HTML ich es im browser garnicht aufrufen könnte.

    Ich meinte nur ob es möglich ist ohne ein <input> die Datei direkt in Javascript über eine Funktion aufzurufen?

  • Mir ist schon klar das ohne HTML ich es im browser garnicht aufrufen könnte.

    Ich meinte nur ob es möglich ist ohne ein <input> die Datei direkt in Javascript über eine Funktion aufzurufen?

    Würde funktionieren, bspw. mit dem FileSystemObject... Aber das kann man alles im Netz finden.


    Und warum nicht mit PHP?

    Besser...

  • Nunja, was Du vorhast ist allerdings mit JS deutlich unkomfortabler, als mit PHP.

    Was man lernen möchte ist das eine, welche Sprache dafür besser geeignet ist, die andere.


    Dir will ja keiner was böses, aber JS ist dafür einfach schlechte Wahl, weil es abängig von der Browser-Engine ist.

    JS ist nicht dafür gedacht, lokale Resourcen zu bearbeiten o.ä. Dass das mit neuen Schnittstellen, wie dem FileSystem API geht, ist der modernen Weiterentwicklung geschuldet, die JS ( glücklicher Weise ) erfährt. Die beste Lösung ist es deshalb aber noch lange nicht.

  • Ich würde es trotzdem gerne mal mit JavaScript versuchen auch, wenn PHP die bessere Lösung ist. Aber ich könnte mir das ganze mal in PHP angucken.


    Ich finde es generell schwierig nach denn passenden Sprachen und Bibliotheken zu suchen. Hast du da ein Tipp für mich welche ich verwenden sollte oder wie ich da die Auswahl besser Treffen könnte?

  • Welche Sprache wann zu verwenden ist, ist tatsächlich nicht sooo pauschal zu beantworten, das hängt wirklich immer vom Problem/Vorhaben ab.


    Wie gesagt, mit JS würde das mit der FileSystem API gehen, kann aber bedingt durch Deine Browser-Version und dem nicht standardisierten Zustand der API zu unerwünschten Nebeneffekten führen oder gar nicht funktionieren.